有人可以向我解释这个代码吗?神秘参数



我很难弄清楚如何读取此代码,如果有人可以向我解释一下,我会很感激。预先感谢您

public class ParameterMystery {
    public static void main(String[] args) {
        int x = 9;
        int y = 2;
        int z = 5;
        mystery(z, y, x);
        mystery(y, x, z);
    }

    public static void mystery(int x, int z, int y) {
        System.out.println(z + " and " + (y - x));
    }
}

输出:

2 and 4
9 and 3 

内部'神秘'内部用来命名变量的字母代表不同的变量(不同的范围),而不是在main中使用的字母 - main(...)中的 x不是在神秘中相同的x(...)

记住,仅仅因为输入变量具有名称,并不意味着它们被分配给函数调用中具有相同名称的参数。第二个输入参数始终首先打印,然后是第三和第一个的减法。这是迫使您的大脑思考范围的"技巧"。

最新更新