If语句中的多个条件
问题描述:
if (gold >= 5 || (item1 = false)) {
item1 = true;
gold = gold - 5;
}
即使item1为true,这样也会继续。如果其中任何一个都不符合,我希望函数不运行。谢谢If语句中的多个条件
答
Item1 = false是一个总是评估为false的任务。
您需要物品1 ==假
答
你必须明白分配(=
)和等价比较(==
)之间的差异。您的代码将赋值为false给变量item1。要评估item1的值,请使用:
if (gold >= 5 || item1 == false) {
item1 = true;
gold = gold - 5;
}
此外,括号内的附加嵌套不是必需的。
答
试图改变这一点:
if (gold >= 5 || (item1 = false)) { item1 = true; gold = gold - 5; }
有了这个:
if (gold >= 5 || (item1 == false)) { item1 = true; gold = gold - 5; }
随着2 =迹象,你检查的等价性。用1 =符号表示分配变量,不进行比较。希望这会有所帮助
'item1 == false'或'!item1' – 2014-11-23 01:21:26
_“我希望函数不能运行,如果其中任何一个都不符合。”_ - 您能否重新解释一下吗?你的意思是,如果任何一个条件成立,或者只有_both_为真(在这种情况下你需要'&&'而不是'||'),那么分配才会发生? – nnnnnn 2014-11-23 01:41:25