或在if语句中使用int的操作数

我的问题是程序没有按我原意的方式读取代码。

我有

if (hero.getPos() == (6 | 11 | 16)) {

move = new Object[] {"Up", "Right", "Left"};

} else {

move = new Object[] {"Up", "Down", "Right", "Left"};

}

当英雄位置为6时,程序仍转到其他位置。

这是为什么?是因为操作数吗?如果是,我应该如何更改?

回答:

用:

if (hero.getPos() == 6 || hero.getPos() == 11 || hero.getPos() == 16)) {

这将做您想要的。

你所做的是比较hero.getPos()有结果的(6|11|16),将做到按位或这些数字之间。

以上是 或在if语句中使用int的操作数 的全部内容, 来源链接: utcz.com/qa/414053.html

回到顶部