0
    Player Anfallare = new Player("A");
    Player Forsvarare = new Player("F");

    Anfallare.armees = 10;
    Forsvarare.armees = 10;
 do{
    Risk.status();

 }while(Anfallare.armees = 0 OR Forsvarare.armees = 0);

我想做这样的事情,它应该一直持续status()Anfallare.armeesorForsvarare.armees之一0

我做的这个不起作用,我需要boolean,找到int,我怎么能做到这一点?

4

3 回答 3

1

将您的 while 条件更改为

while(Anfallare.armees == 0 || Forsvarare.armees == 0)

在 java 中,“或”是||,相等性测试是==

于 2011-05-25T17:00:39.520 回答
1

保持 status() 直到 Anfallare.armees 或 Forsvarare.armees 之一为 0

由于您想运行status() 直到其中一个值为 0,您需要否定整个事情:

do {
    Risk.status();
} while (Anfallare.armees != 0 && Forsvarare.armees != 0);

翻译这意味着:status()当两者armees都不为零时做 - 所以这与“直到其中一个为0”具有相同的含义。

条件也可以写成对你写的内容的否定:

while (! (Anfallare.armees == 0 || Forsvarare.armees == 0) )

但我认为第一个版本更容易阅读......

于 2011-05-25T17:05:43.943 回答
0

它应该是:

do {
   ...
} while(Anfallare.armees == 0 || Forsvarare.armees == 0);

相等运算符 is==和 not =(即赋值运算符)。此外,Java 中的逻辑 OR 由||and not表示OR

于 2011-05-25T17:00:00.980 回答