if (gold >= 5 || (item1 = false) ) {
item1 = true;
gold = gold - 5;
}
即使item1为true,这仍将继续。如果不满足其中任何一个,我希望该功能不能运行。谢谢
答案 0 :(得分:5)
Item1 = false是一个总是评估为false的赋值。
你需要item1 == false
答案 1 :(得分:2)
您必须了解分配(=
)和等效比较(==
)之间的区别。您的代码将false值赋给变量item1。要评估item1的值,请使用:
if (gold >= 5 || item1 == false ) {
item1 = true;
gold = gold - 5;
}
此外,括号内的附加嵌套不是必需的。
答案 2 :(得分:1)
尝试改变这一点:
if (gold >= 5 || (item1 = false) ) { item1 = true; gold = gold - 5; }
有了这个:
if (gold >= 5 || (item1 == false) ) { item1 = true; gold = gold - 5; }
用2 =符号检查等效性。使用1 =符号,您将分配变量,而不是比较它。希望这有帮助