运行这个 java 程序时,我希望输出只是第一个 println,因为其他方法,quaffle 和 snitch 只返回整数。但是,该程序的输出还包括 quaffle 和 snitch 方法的 println。我希望 println 在后一种方法中没有用,因为它们没有被返回。发生了什么?
输出:
告密者: x = 4004,y = 1001
鬼飞球:x = 2003,y = 1,z = 1001
游走球:x = 1001,y = 2001,z = 2003
该程序:
import acm.program.*;
public class Hogwarts extends ConsoleProgram {
public void run() {
bludger(2001);
}
private void bludger(int y) {
int x = y / 1000;
int z = (x + y);
x = quaffle(z, y);
println("bludger: x = " + x + ", y = " + y + ", z = " + z);
}
private int quaffle(int x, int y) {
int z = snitch(x + y, y);
y /= z;
println("quaffle: x = " + x + ", y = " + y + ", z = " + z);
return z;
}
private int snitch(int x, int y) {
y = x / (x % 10);
println("snitch: x = " + x + ", y = " + y);
return y;
}
}