gpt4 book ai didi

java - 编写条件语句

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:07:06 24 4
gpt4 key购买 nike

我是一名学习 Java 的学生,被作业问题的最后一部分卡住了。我需要编写一个条件语句来打印掷骰子是否是 Yahtzee(所有五个骰子都相等)。我不知道该怎么做,因为我使用的是整数而不是 boolean 值。我知道我不能将 int 转换为 boolean,到目前为止,这种转换是我知道如何更改变量的唯一方法。任何帮助将不胜感激,因为实现我正在寻找的方法超出了我目前所能理解的范围。这就是我所拥有的,问题在倒数第二行。

import java.util.Random;

public class FiveDice_JLR
{
//-----------------------------------------------------------------
// Generates random numbers in various ranges.
//-----------------------------------------------------------------
public static void main(String[] args)
{
Random generator = new Random();
int die1, die2, die3, die4, die5;

die1 = generator.nextInt(6)+1;
System.out.println("Die 1: " + die1);

die2 = generator.nextInt(6)+1;
System.out.println("Die 2: " + die2);

die3 = generator.nextInt(6)+1;
System.out.println("Die 3: " + die3);

die4 = generator.nextInt(6)+1;
System.out.println("Die 4: " + die4);

die5 = generator.nextInt(6)+1;
System.out.println("Die 5: " + die5);


**if(die1==die2&==die3==die4&==die5&&);**
{
System.out.println("Yahtzee!!!!");
}

}

最佳答案

如果你只使用&,那就是按位与,因此它比较所有数字的位。你要的是&&,逻辑与:

if(die1 == die2 && die2 == die3 && die3 == die4 && die4 == die5) {
// Something here...
}

另请注意,每个 && 运算符就像 == 运算符一样,需要 2 个操作数才能正确比较


假设您的所有值都是正数,另一种检查所有数字是否彼此相等的方法是将它们全部相加并检查总和是否等于 5 乘以其中一个值。

if((die1 + die2 + die3 + die4 + die5) == die1 * 5) {
// Something here...
}

这是在做同样的事情并且更短,但是很容易出错,因为你将来可能决定生成负数(出于某种原因),或者决定使用更多的骰子而忘记更改 5 到适当的数字等。一般情况下,只需坚持第一个

关于java - 编写条件语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39692690/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com