【问题标题】:How to return Boolean value in Java [closed]如何在 Java 中返回布尔值 [关闭]
【发布时间】:2021-04-04 00:01:51
【问题描述】:

在下面的代码中,我试图从我的方法IsWinning 中获取一个布尔值,然后我想在它为假时创建,继续玩彩票。如果我们获胜并且结果为真,则程序退出。我写的其他方法无关紧要,所以我没有将它们添加到代码中。

我怎样才能在这里创建一个while循环,用我的这个观点或任何其他观点?

    int machine [] = machineGenerator();
    int user [] = userGenerating();
    boolean result= false;
    do {
        printUserTicket(user);
        printMachineTicket(machine);
        isWinnerTicket(user, machine);
    } while (result=!true);
        //how can i assign booelan value here from my IsWinningMethod

}

public static void isWinnerTicket(int[] a , int [] b) {
    int hits = 0;
    for (int i = 0; i < a.length ; i++) {
        for (int j = 0; j < b.length; j++) {
            if (a[i] == b[j]){
                    hits++;
            }
        }
    }
    if(hits == 6){
        System.out.println("You Win");
        
    }else {
        System.out.println("You Lose");
    }
}

【问题讨论】:

  • 提示:保护if-statements 的条件是boolean 类型。
  • 是什么阻止您创建循环或返回Boolean(或者,这里可能更好的是boolean)?
  • @JohnBollinger 我同意你们俩的观点。由于单词 Boolean 是从一个名称 Boole 派生的,因此它在英文中的拼写为大写 B。在 Java 中,原始的 booleanBoolean 对象更好。这可能也是 OP 所说的 Boolean value 的意思。
  • 谢谢大家。我对方法类型及其工作方式(布尔、整数、双精度等)的看法完全错误。现在我想出了@OleV.V.的以下答案。

标签: java while-loop boolean


【解决方案1】:
  1. 声明您的isWinnerTicket 方法boolean 而不是void。换个词就好了。

  2. 在你的方法中,返回 true 或 false 使用

    return hits == 6;
    

    由于hits == 6 将评估为真或假,这就是您所需要的。

  3. 在您的主程序中,您希望获取返回的布尔值。我看到了两种好方法:

    1. 分配给你已有的变量:

          result = isWinnerTicket(user, machine);
      
    2. 将方法调用直接放入循环条件中:

      } while (! isWinnerTicket(user, machine));
      

      这里的感叹号!表示不是

    任君挑选。

【讨论】:

    猜你喜欢
    • 2013-03-28
    • 1970-01-01
    • 2015-02-14
    • 1970-01-01
    • 1970-01-01
    • 2017-03-18
    • 2021-11-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多