This question already has answers here:
Is Java “pass-by-reference” or “pass-by-value”?
(88个答案)
5个月前关闭。
为什么下面的代码打印出6而不是20?
提前致谢。
(88个答案)
5个月前关闭。
为什么下面的代码打印出6而不是20?
public class ClassA {
public static void main (String [] args ) {
int k = 5;
doub ( k );
doub ( k );
if ( k <= 19) {
k ++;
}
System. out . println ( k );
}
public static void doub (int x ) {
x *= 2;
}
}
提前致谢。
最佳答案
由于方法中的对象与原始K是不同的对象,因此您需要获取double()返回结果并将K设置为该结果
公共静态int doub(int x){return x * 2}
K =杜布(k)
10-04 17:50