gpt4 book ai didi

java嵌套if语句else不起作用

转载 作者:行者123 更新时间:2023-12-01 22:43:20 25 4
gpt4 key购买 nike

当其他语句都不为 true 时,语句的 else 部分不会执行。

if (personPlay.equals(computerPlay))  
System.out.println("It's a tie!");
else if (personPlay.equals("R"))
if (computerPlay.equals("S"))
System.out.println("Rock crushes scissors. You win!!");
else if (personPlay.equals("P"))
if (computerPlay.equals("R"))
System.out.println("Paper raps around rock. You win!");
else if (personPlay.equals("S"))
if (computerPlay.equals("P"))
System.out.println("Scissors cut paper. You win!");
else
System.out.println("you lose");

最佳答案

使用括号:

if (personPlay.equals(computerPlay)) {
System.out.println("It's a tie!");
} else if (personPlay.equals("R")) {
if (computerPlay.equals("S"))
System.out.println("Rock crushes scissors. You win!!");
} else if (personPlay.equals("P")) {
if (computerPlay.equals("R"))
System.out.println("Paper wraps around rock. You win!");
} else if (personPlay.equals("S")) {
if (computerPlay.equals("P"))
System.out.println("Scissors cut paper. You win!");
} else {
System.out.println("you lose");
}

正如评论中提到的,这段代码仍然无法工作,因为逻辑有缺陷。您应该在每个内部 if 中有一个 else 子句,其中您应该打印“youlos”:

if (personPlay.equals(computerPlay)) {
System.out.println("It's a tie!");
} else if (personPlay.equals("R")) {
if (computerPlay.equals("S"))
System.out.println("Rock crushes scissors. You win!!");
else
System.out.println("you lose");
} else if (personPlay.equals("P")) {
if (computerPlay.equals("R"))
System.out.println("Paper wraps around rock. You win!");
else
System.out.println("you lose");
} else if (personPlay.equals("S")) {
if (computerPlay.equals("P"))
System.out.println("Scissors cut paper. You win!");
else
System.out.println("you lose");
} else {
System.out.println("invalid input");
}

或者您可以消除内部 if 并使用 && 代替:

if (personPlay.equals(computerPlay)) {
System.out.println("It's a tie!");
} else if (personPlay.equals("R") && computerPlay.equals("S")) {
System.out.println("Rock crushes scissors. You win!!");
} else if (personPlay.equals("P") && computerPlay.equals("R")) {
System.out.println("Paper wraps around rock. You win!");
} else if (personPlay.equals("S") && computerPlay.equals("P")) {
System.out.println("Scissors cut paper. You win!");
} else {
System.out.println("you lose");
}

关于java嵌套if语句else不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25769818/

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