如何将参数传递给方法

时间:2014-11-30 18:22:41

标签: java methods

如果我想将从用户读取的3个整数传递给方法,那么从用户那里读取这些整数的顺序是否重要?我的意思是这段代码之间存在差异:

        int small = scan.nextInt();
        int big = scan.nextInt();
        int medium= scan.nextInt(); 
        size(small, big, medium);
        //size is a method I wrote :public static boolean size(int small, int big, int medium)

和这段代码:

        int medium= scan.nextInt();
        int small = scan.nextInt();
        int big = scan.nextInt();
        size(small, big, medium);

4 个答案:

答案 0 :(得分:1)

都能跟得上!虽然您应该让用户知道他们输入了什么:

    System.out.println("Enter the medium value: );
    int medium= scan.nextInt();
    System.out.println("Enter the small value: );
    int small = scan.nextInt();
    System.out.println("Enter the big value: );
    int big = scan.nextInt();
    size(small, big, medium);

话虽如此,如果用户输入的值不正确(例如,如果用户输入中值时用户输入小值),则可能会出现问题。

因此,您应该在调用方法之前执行一些检查,如下所示:

int small, medium, big;
do {
    System.out.println("Enter the medium value: );
    medium= scan.nextInt();
    System.out.println("Enter the small value: );
    small = scan.nextInt();
    System.out.println("Enter the big value: );
    big = scan.nextInt();
while (!(small < medium && medium < large));

size(small, big, medium);

答案 1 :(得分:0)

如果用户输入102030,则第一个版本的方法会调用size(10,20,30),第二个版本会有size(20,10,30)。这是一个区别。

答案 2 :(得分:0)

1.仅在设置方法时设置变量没有区别,例如,无论您如何订购,这都没有问题。

 int small = scan.nextInt();
 int big = scan.nextInt();
 int medium= scan.nextInt();
  1. 调用应该模仿你创建方法的方式会出现语法错误,这是我第一次开始编程时最大的缺陷之一

    public int size(int small, int big , int medium){
    ....}
    size(small, big, medium); // correct
    size(big,small, medium);// wrong in this case
    
  2. 3.但是你可以按任何顺序声明变量,只要你调用方法时它就像你创建方法一样在设置中。

    int medium= scan.nextInt();
    int small = scan.nextInt();
    int big = scan.nextInt();
    size(small, big, medium);
    

    4.附加示例如果您想以与第二个示例相同的方式调用size方法,您可以像这样设置方法:

    public int size(int big, int small , int medium){
    ....} 
    size(big,small, medium); // correct
    size(small, big, medium); // wrong in this case 
    

答案 3 :(得分:-1)

您应该提示用户,以便他/她可以插入正确的数据。主要是它没有区别,除非方法本身直接处理订单。