0

我试图理解传递的参数,但遇到了一个问题。

假设我有以下代码:

我将值 60 传递给方法 someMethod。从那里我希望通过用户输入修改该值。一旦它被修改,我希望它将该值传递给另一个名为 getValue 的方法。getValue 方法然后返回该值。

这是问题所在:

1) 如果我要调用 someMethod,它还会再次调用我不想要的用户输入。

2)打印出getValue方法的值的正确方法是什么:

New.getValue(int 返回值); 调用错误“意外的类型,所需的值,找到的类”

public class New {

    Scanner sc = new Scanner(System.in)

private int static num1 = 60;
someMethod(num1);

    public static int someMethod(int myValue)
    {
        //modify the integer
        System.out.println("Enter in the value to modify");
        myValue = sc.nextInt();
        //output the value to a getter method
        getValue(myValue);
        return myValue;
    }

    public static int getValue(int returnedValue)
    {
        return returnedValue;
    }

}

与往常一样,如果您需要澄清,请询问!谢谢。

4

2 回答 2

5

someMethod(num1);应该包含在您的main方法或其他方法中。

第二:您没有sc定义变量。所以,你的代码在那里也失败了。

第三:您没有定义num1. 它应该是private static int num1 - 60;

getValue()调用方法时需要传递实际值而不是定义。

例子:System.out.println(getValue(50));

于 2012-10-12T18:12:10.527 回答
0

试试这个...

我还添加了修改部分......

public class New {

private static int num1;


    public static int someMethod()
    {

        System.out.println("Enter in the value to modify");

        Scanner s = new Scanner(System.in);

        int temp = s.nextInt();

        return getValue(num1+temp); // Modification Done
    }

    public static int getValue(int returnedValue)
    {
        return returnedValue;
    }

    public static void main(String[] args){

        Scanner scan = new Scanner(System.in);

        New.num1 = scan.nextInt();
        int i = someMethod();
        System.out.println(i);



    }

}
于 2012-10-12T18:20:31.730 回答