Как включить перегрузку методов для вызова разных типов параметров для одного имени метода в Java 8? - PullRequest
0 голосов
/ 03 декабря 2018

Я пытаюсь изменить свой код, чтобы включить int и двойной параметр для одного имени метода.Моя конечная цель - позволить пользователю выбрать два числа, и если они наберут одно как int, а другое как double, я хочу, чтобы код по-прежнему мог учитывать эти различные типы и печатать успешно.Следующий код - это основы, которые я придумала до сих пор, и я хотел бы получить некоторую помощь о том, как изменить этот код для использования перегрузки методов.

import java.util.Scanner;
public class SimpleCalculator {
public static void main(String[] args) {
   Scanner input = new Scanner(System.in);
    System.out.println("Select operation:");
    System.out.println("1. Divide 2 numbers");
    System.out.println("2. Exit");

    System.out.print("Enter choice(1/2:");
    int choice = input.nextInt();

    if (choice == 1){
        division();
    }
    else if (choice == 2){
        Exit();
    }
    input.close();
  }

public static void division(){
    int nOne, nTwo;
    Scanner input = new Scanner(System.in);

    System.out.println("Division");

    System.out.print("First Number: ");
    nOne = input.nextInt();

    System.out.print("Second Number: ");
    nTwo = input.nextInt();

    input.close();
    System.out.println("Sum: " + nOne + " / " + nTwo + " = " + (nOne / 
    nTwo));
 }

 public static void Exit(){
    Scanner input = new Scanner(System.in);
    System.out.println("Goodbye");
    System.exit(0);
 }
 }

1 Ответ

0 голосов
/ 03 декабря 2018

Вам необходимо указать тип данных через параметры.Таким образом, у вас есть два метода, подобных этому:

public int division(int number1, int number2){
//do division
return result;
}

public double division(double number1, double number2){
//do division
return result;
}

, затем вы можете вызвать метод разделения как с помощью int, так и double, и будет выбран соответствующий метод.

...