Java 参数mysteryReturn
在以下代码中:Java 参数mysteryReturn,java,Java,在以下代码中: public class MysteryReturn { //Given the following program: public static void main(String[] args) { int x = 1; int y = 2; int z = 3; z = mystery(x, z, y);
public class MysteryReturn {
//Given the following program:
public static void main(String[] args) {
int x = 1;
int y = 2;
int z = 3;
z = mystery(x, z, y); // Statement 1
System.out.println(x + " " + y + " " + z); // Statement 2
x = mystery(z, z, x); // Statement 3
System.out.println(x + " " + y + " " + z); // Statement 4
y = mystery(y, y, z); // Statement 5
System.out.println(x + " " + y + " " + z); // Statement 6
}
public static int mystery( int z, int x, int y) {
z--;
x = 2 * y + z;
y = x - 1;
System.out.println(y + " "+ z);
return x;
}
}
我得到以下结果:
报表1:3 0
报表2:1 2 4
报表3:4 3
报表4:5 2 4
报表5:8 1
报表6:5 9 4
语句1对我来说是非常清楚的,但是我不明白语句2中的4是从哪里来的 下面是一步步发生的事情
public static int mystery( int z, int x, int y) {
// z=1, x=3, y=2
z--; // z=0
x = 2 * y + z; // x=4
y = x - 1; // y=3
System.out.println(y + " "+ z); // print: 3 0
return x; // return 4
}
System.out.println(x + " " + y + " " + z); // print: 1 2 4
public static int mystery( int z, int x, int y) {
// z=4, x=4, y=1
z--; // z=3
x = 2 * y + z; // x=2*1+3=5
y = x - 1; // y=5-1=4
System.out.println(y + " "+ z); // print: 4 3
return x; // return 5
}
System.out.println(x + " " + y + " " + z); // print: 5 2 4
public static int mystery( int z, int x, int y) {
// z=2, x=2, y=4
z--; // z=1
x = 2 * y + z; // x=2*4+1=9
y = x - 1; // y=9-1=8
System.out.println(y + " "+ z); // print: 8 1
return x; // return 9
}
System.out.println(x + " " + y + " " + z); // print: 5 9 4
public static int mystery( int z, int x, int y) {
// z=1, x=3, y=2
z--; // z=0
x = 2 * y + z; // x=4
y = x - 1; // y=3
System.out.println(y + " "+ z); // print: 3 0
return x; // return 4
}
System.out.println(x + " " + y + " " + z); // print: 1 2 4
public static int mystery( int z, int x, int y) {
// z=4, x=4, y=1
z--; // z=3
x = 2 * y + z; // x=2*1+3=5
y = x - 1; // y=5-1=4
System.out.println(y + " "+ z); // print: 4 3
return x; // return 5
}
System.out.println(x + " " + y + " " + z); // print: 5 2 4
public static int mystery( int z, int x, int y) {
// z=2, x=2, y=4
z--; // z=1
x = 2 * y + z; // x=2*4+1=9
y = x - 1; // y=9-1=8
System.out.println(y + " "+ z); // print: 8 1
return x; // return 9
}
System.out.println(x + " " + y + " " + z); // print: 5 9 4
public static int mystery( int z, int x, int y) {
// z=1, x=3, y=2
z--; // z=0
x = 2 * y + z; // x=4
y = x - 1; // y=3
System.out.println(y + " "+ z); // print: 3 0
return x; // return 4
}
System.out.println(x + " " + y + " " + z); // print: 1 2 4
public static int mystery( int z, int x, int y) {
// z=4, x=4, y=1
z--; // z=3
x = 2 * y + z; // x=2*1+3=5
y = x - 1; // y=5-1=4
System.out.println(y + " "+ z); // print: 4 3
return x; // return 5
}
System.out.println(x + " " + y + " " + z); // print: 5 2 4
public static int mystery( int z, int x, int y) {
// z=2, x=2, y=4
z--; // z=1
x = 2 * y + z; // x=2*4+1=9
y = x - 1; // y=9-1=8
System.out.println(y + " "+ z); // print: 8 1
return x; // return 9
}
System.out.println(x + " " + y + " " + z); // print: 5 9 4
public static int mystery( int z, int x, int y) {
// z=1, x=3, y=2
z--; // z=0
x = 2 * y + z; // x=4
y = x - 1; // y=3
System.out.println(y + " "+ z); // print: 3 0
return x; // return 4
}
System.out.println(x + " " + y + " " + z); // print: 1 2 4
public static int mystery( int z, int x, int y) {
// z=4, x=4, y=1
z--; // z=3
x = 2 * y + z; // x=2*1+3=5
y = x - 1; // y=5-1=4
System.out.println(y + " "+ z); // print: 4 3
return x; // return 5
}
System.out.println(x + " " + y + " " + z); // print: 5 2 4
public static int mystery( int z, int x, int y) {
// z=2, x=2, y=4
z--; // z=1
x = 2 * y + z; // x=2*4+1=9
y = x - 1; // y=9-1=8
System.out.println(y + " "+ z); // print: 8 1
return x; // return 9
}
System.out.println(x + " " + y + " " + z); // print: 5 9 4
public static int mystery( int z, int x, int y) {
// z=1, x=3, y=2
z--; // z=0
x = 2 * y + z; // x=4
y = x - 1; // y=3
System.out.println(y + " "+ z); // print: 3 0
return x; // return 4
}
System.out.println(x + " " + y + " " + z); // print: 1 2 4
public static int mystery( int z, int x, int y) {
// z=4, x=4, y=1
z--; // z=3
x = 2 * y + z; // x=2*1+3=5
y = x - 1; // y=5-1=4
System.out.println(y + " "+ z); // print: 4 3
return x; // return 5
}
System.out.println(x + " " + y + " " + z); // print: 5 2 4
public static int mystery( int z, int x, int y) {
// z=2, x=2, y=4
z--; // z=1
x = 2 * y + z; // x=2*4+1=9
y = x - 1; // y=9-1=8
System.out.println(y + " "+ z); // print: 8 1
return x; // return 9
}
System.out.println(x + " " + y + " " + z); // print: 5 9 4
public static int mystery( int z, int x, int y) {
// z=1, x=3, y=2
z--; // z=0
x = 2 * y + z; // x=4
y = x - 1; // y=3
System.out.println(y + " "+ z); // print: 3 0
return x; // return 4
}
System.out.println(x + " " + y + " " + z); // print: 1 2 4
public static int mystery( int z, int x, int y) {
// z=4, x=4, y=1
z--; // z=3
x = 2 * y + z; // x=2*1+3=5
y = x - 1; // y=5-1=4
System.out.println(y + " "+ z); // print: 4 3
return x; // return 5
}
System.out.println(x + " " + y + " " + z); // print: 5 2 4
public static int mystery( int z, int x, int y) {
// z=2, x=2, y=4
z--; // z=1
x = 2 * y + z; // x=2*4+1=9
y = x - 1; // y=9-1=8
System.out.println(y + " "+ z); // print: 8 1
return x; // return 9
}
System.out.println(x + " " + y + " " + z); // print: 5 9 4
下面是一步步发生的事情
public static int mystery( int z, int x, int y) {
// z=1, x=3, y=2
z--; // z=0
x = 2 * y + z; // x=4
y = x - 1; // y=3
System.out.println(y + " "+ z); // print: 3 0
return x; // return 4
}
System.out.println(x + " " + y + " " + z); // print: 1 2 4
public static int mystery( int z, int x, int y) {
// z=4, x=4, y=1
z--; // z=3
x = 2 * y + z; // x=2*1+3=5
y = x - 1; // y=5-1=4
System.out.println(y + " "+ z); // print: 4 3
return x; // return 5
}
System.out.println(x + " " + y + " " + z); // print: 5 2 4
public static int mystery( int z, int x, int y) {
// z=2, x=2, y=4
z--; // z=1
x = 2 * y + z; // x=2*4+1=9
y = x - 1; // y=9-1=8
System.out.println(y + " "+ z); // print: 8 1
return x; // return 9
}
System.out.println(x + " " + y + " " + z); // print: 5 9 4
public static int mystery( int z, int x, int y) {
// z=1, x=3, y=2
z--; // z=0
x = 2 * y + z; // x=4
y = x - 1; // y=3
System.out.println(y + " "+ z); // print: 3 0
return x; // return 4
}
System.out.println(x + " " + y + " " + z); // print: 1 2 4
public static int mystery( int z, int x, int y) {
// z=4, x=4, y=1
z--; // z=3
x = 2 * y + z; // x=2*1+3=5
y = x - 1; // y=5-1=4
System.out.println(y + " "+ z); // print: 4 3
return x; // return 5
}
System.out.println(x + " " + y + " " + z); // print: 5 2 4
public static int mystery( int z, int x, int y) {
// z=2, x=2, y=4
z--; // z=1
x = 2 * y + z; // x=2*4+1=9
y = x - 1; // y=9-1=8
System.out.println(y + " "+ z); // print: 8 1
return x; // return 9
}
System.out.println(x + " " + y + " " + z); // print: 5 9 4
public static int mystery( int z, int x, int y) {
// z=1, x=3, y=2
z--; // z=0
x = 2 * y + z; // x=4
y = x - 1; // y=3
System.out.println(y + " "+ z); // print: 3 0
return x; // return 4
}
System.out.println(x + " " + y + " " + z); // print: 1 2 4
public static int mystery( int z, int x, int y) {
// z=4, x=4, y=1
z--; // z=3
x = 2 * y + z; // x=2*1+3=5
y = x - 1; // y=5-1=4
System.out.println(y + " "+ z); // print: 4 3
return x; // return 5
}
System.out.println(x + " " + y + " " + z); // print: 5 2 4
public static int mystery( int z, int x, int y) {
// z=2, x=2, y=4
z--; // z=1
x = 2 * y + z; // x=2*4+1=9
y = x - 1; // y=9-1=8
System.out.println(y + " "+ z); // print: 8 1
return x; // return 9
}
System.out.println(x + " " + y + " " + z); // print: 5 9 4
public static int mystery( int z, int x, int y) {
// z=1, x=3, y=2
z--; // z=0
x = 2 * y + z; // x=4
y = x - 1; // y=3
System.out.println(y + " "+ z); // print: 3 0
return x; // return 4
}
System.out.println(x + " " + y + " " + z); // print: 1 2 4
public static int mystery( int z, int x, int y) {
// z=4, x=4, y=1
z--; // z=3
x = 2 * y + z; // x=2*1+3=5
y = x - 1; // y=5-1=4
System.out.println(y + " "+ z); // print: 4 3
return x; // return 5
}
System.out.println(x + " " + y + " " + z); // print: 5 2 4
public static int mystery( int z, int x, int y) {
// z=2, x=2, y=4
z--; // z=1
x = 2 * y + z; // x=2*4+1=9
y = x - 1; // y=9-1=8
System.out.println(y + " "+ z); // print: 8 1
return x; // return 9
}
System.out.println(x + " " + y + " " + z); // print: 5 9 4
public static int mystery( int z, int x, int y) {
// z=1, x=3, y=2
z--; // z=0
x = 2 * y + z; // x=4
y = x - 1; // y=3
System.out.println(y + " "+ z); // print: 3 0
return x; // return 4
}
System.out.println(x + " " + y + " " + z); // print: 1 2 4
public static int mystery( int z, int x, int y) {
// z=4, x=4, y=1
z--; // z=3
x = 2 * y + z; // x=2*1+3=5
y = x - 1; // y=5-1=4
System.out.println(y + " "+ z); // print: 4 3
return x; // return 5
}
System.out.println(x + " " + y + " " + z); // print: 5 2 4
public static int mystery( int z, int x, int y) {
// z=2, x=2, y=4
z--; // z=1
x = 2 * y + z; // x=2*4+1=9
y = x - 1; // y=9-1=8
System.out.println(y + " "+ z); // print: 8 1
return x; // return 9
}
System.out.println(x + " " + y + " " + z); // print: 5 9 4
public static int mystery( int z, int x, int y) {
// z=1, x=3, y=2
z--; // z=0
x = 2 * y + z; // x=4
y = x - 1; // y=3
System.out.println(y + " "+ z); // print: 3 0
return x; // return 4
}
System.out.println(x + " " + y + " " + z); // print: 1 2 4
public static int mystery( int z, int x, int y) {
// z=4, x=4, y=1
z--; // z=3
x = 2 * y + z; // x=2*1+3=5
y = x - 1; // y=5-1=4
System.out.println(y + " "+ z); // print: 4 3
return x; // return 5
}
System.out.println(x + " " + y + " " + z); // print: 5 2 4
public static int mystery( int z, int x, int y) {
// z=2, x=2, y=4
z--; // z=1
x = 2 * y + z; // x=2*4+1=9
y = x - 1; // y=9-1=8
System.out.println(y + " "+ z); // print: 8 1
return x; // return 9
}
System.out.println(x + " " + y + " " + z); // print: 5 9 4
好。语句1返回4。在语句2中打印该4(如
z
)。但是既然你理解了陈述1,那么你也必须理解陈述2。你的名字太糟糕了,你把自己的脚给砸了。提供x
作为z
确实令人困惑。@HimBromBeere这是一个Java谜题,因此是有意的。谢谢,我知道语句1返回了4,但为什么它在语句2中打印为z?代码不是我写的,我开始尝试去理解它。正如@qbrutebe所说,这是一个java之谜,因为您将神秘(x,z,y)
的值赋给了z
好的4
。语句1返回4。在语句2中打印该4(如z
)。但是既然你理解了陈述1,那么你也必须理解陈述2。你的名字太糟糕了,你把自己的脚给砸了。提供x
作为z
确实令人困惑。@HimBromBeere这是一个Java谜题,因此是有意的。谢谢,我知道语句1返回了4,但为什么它在语句2中打印为z?代码不是我写的,我开始尝试去理解它。正如@qbrutebe所说,这是一个java之谜,因为您将神秘(x,z,y)
的值赋给了z
,该值恰好是4