有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java将条件操作放入语句中

我这里有这个代码:

public int withoutDoubles(int die1, int die2, boolean noDoubles) {
  if (noDoubles && die1 == die2) return ((die1 + 1) % 6 + die2);
  else return die1 + die2;
}

我想得到它,如果它是6,当模运算符运行时,它会把它放在6,而不是0。我知道我可以用一个额外的if语句来实现它,但我更愿意保持它的原样,只使用一个if-else对。这可能吗


共 (1) 个答案

  1. # 1 楼答案

    将评论升级为回答

    模运算符%将产生0到5之间的范围。它将保留1-5,并将6变为0。在模运算后添加一个,将范围转换回1-6

    (die1 % 6) + 1