繁体   English   中英

如何在Java 8中合并方法重载以为一个方法名称调用不同的参数类型?

[英]How do I incorporate method overloading to call different parameter types for one method name in Java 8?

我试图更改我的代码以为一个方法名称合并一个int和double参数。 我的最终目标是让用户选择两个数字,如果他们将一个数字输入为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);
 }
 }

您需要通过参数给出数据类型。 因此,您有两种这样的方法:

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

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

然后可以用int和double调用方法除法,然后将选择相应的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM