Java程序启动和停止而不做任何事情

时间:2017-02-23 00:46:30

标签: java performance

我试图制作一个Nim的基本游戏。我是java的初学者。当我运行代码时,它只运行一秒钟,并在没有按照我要求的情况下停止。它可能是一个简单的解决方案,但我不得不问。有谁有想法吗?这是我的代码。

 tr {
   display: block;}

 th,
 td {
   display:inline-block;
   vertical-align:middle;}

 th:nth-child(1), 
 td:nth-child(1) {
   width: 50%;}

 th:nth-child(2), 
 td:nth-child(2) {
   width: 20%;}

 th:nth-child(3), 
 td:nth-child(3) {
   width: 20%;}

1 个答案:

答案 0 :(得分:0)

在if语句和循环标题中使用布尔变量时,不需要检查它们是否等于truefalse,只需像这样使用变量本身,

while(!win && turn){
    System.out.println("The number is 21. Enter a number from 1 - 3");
    playernum = input.nextInt();

    int remaining = gamenum - playernum;

    System.out.println("The number is now " + remaining);
    turn = false;

    if(!turn && gamenum > 0){
    System.out.println("Computer is thinking...");
    try {
        Thread.sleep(3000);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
    }
}

此外,之前的另一个问题是,当您检查布尔变量时,您使用了错误的运算符=。您应该使用==来比较基本类型之间的相等性,但是对于布尔值,它不是必需的。如果你想检查布尔变量是否为true,只需使用布尔变量本身作为条件。如果你想检查一个布尔变量是否为' false',只需在条件中使用!运算符来使用布尔变量的否定。