根据var名称,该方法输出Java中的内容

Kak*_*aka 1 java

我写了一个方法来打印我的结果.如果调用参数,我可以修改方法来打印不同的消息让我们说' result3 '吗?

在下面这种情况下,我无法访问方法中的变量result2.Eclipse说"'result2'无法解析为变量".

        double result2 = addValues(s1,s2,s3);
        printAnswer(result2);

    }

    static void printAnswer (double answer) {
        System.out.println("The answer is:" + " " + answer);
    }
Run Code Online (Sandbox Code Playgroud)

我是否需要将'printAnswer'修改为非静态方法?

das*_*ght 5

作为参数传递给方法的变量的名称对于该方法是未知的.此外,可能涉及多个变量

printAnswer(result2+result3);
Run Code Online (Sandbox Code Playgroud)

或根本没有变量

printAnswer(42.53);
Run Code Online (Sandbox Code Playgroud)

提出问题"传递给我的方法的变量的名称是什么?" 不可能回答.

您的方法只能对answer参数的值起作用,而不能对用于调用方法的参数表达式起作用.

如果你想区分除了值之外的东西,让你的调用者传递一个额外的参数,如下所示:

static void printAnswer (double answer, String name) {
    ...
}
Run Code Online (Sandbox Code Playgroud)