以下是我要询问的代码:
int price = 0;
boolean isFree = (price == 0);
if (isFree) {
price = 10;
if (isFree)
System.out.println("one");
else
System.out.println("two");
}
因此,我只想知道为什么当价格变量更改为10时
isFree
变量仍然为true。换句话说,为什么价格变量切换为10而不影响布尔表达式? 最佳答案
通过boolean isFree = (price == 0);
初始化后,将isFree
变量确定为true
。
即使更改了price
,它也不会更改,除非您明确地更改它(例如再次调用boolean isFree = (price == 0);
)。