java分配给另一个变量的变量是否更改(原始变量更改)第二个变量是否更改?
我编写这段代码是为了计算x^y
而没有使用math类,我使用了一个变量m
,我将它设置为等于x
。当x在循环中更改其值时,m
的值是否也会更改,因为它等于x
还是与初始值x
保持相同
package loops;
import java.util.Scanner;
public class XToPowerY {
/**
* @param args
*/
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int x = sc.nextInt();
int y = sc.nextInt();
int m = x;
for (int i = 0; i <= y - 2; i++) {
x = x * m;
}
System.out.println(x);
}
}
# 1 楼答案
使用调试器有助于解决您的问题/只需单击几下即可回答您的问题
m
保留它的值,因为您只存储x
的值,而不存储引用# 2 楼答案
m保持在x的初始值。如果在for循环中包含
m = x;
,它将改变。但是,请记住,Java仅在原语中以这种方式运行