调试我的简单java游戏(石头剪纸机)

调试我的简单java游戏(石头剪纸机),java,Java,我创建这个程序是为了无限次地运行,要求用户输入一个choicerock、纸张或剪刀,这似乎很好。问题不在于满足了“如果”或“如果…”else语句。无论我给它什么输入,只要在else语句中打印出else语句,输入一个有效的选项。我找不到我犯的错误,所以我将我的代码链接到下面。。。。。提前谢谢 导入java.util.Scanner; 导入java.util.Random; 公营苹果{ 公共静态字符串参数[]{ 扫描仪输入=新的ScannerSystem.in; 随机数=新随机数; 字符串rps[]

我创建这个程序是为了无限次地运行,要求用户输入一个choicerock、纸张或剪刀,这似乎很好。问题不在于满足了“如果”或“如果…”else语句。无论我给它什么输入,只要在else语句中打印出else语句,输入一个有效的选项。我找不到我犯的错误,所以我将我的代码链接到下面。。。。。提前谢谢

导入java.util.Scanner; 导入java.util.Random; 公营苹果{ 公共静态字符串参数[]{ 扫描仪输入=新的ScannerSystem.in; 随机数=新随机数; 字符串rps[]={岩石、纸张、剪刀}; 弦乐演奏者; 字符串ai; int rand,pscore=0,aiscore=0; while1<2{ System.out.PRINTLN拿起您的选择\n锁\n佩尔\n锡瑟; player=input.nextLine; rand=number.nextInt3; ai=卢比[兰特]; System.out.printlnai; ifplayer==ai{ pscore+=0; aiscore+=0; System.out.println您的对手选择+ai+\t您的分数=+pscore+\TopComponents分数=+aiscore; System.out.print\n; 持续 }否则{ 如果玩家==摇滚乐和ai==纸张{ aiscore+=1; pscore+=0; System.out.println您的对手选择+ai+\t您的分数=+pscore+\TopComponents分数=+aiscore; System.out.print\n; 持续 }否则,如果玩家==摇滚和ai==剪刀{ pscore+=1; aiscore+=0; System.out.println您的对手选择+ai+\t您的分数=+pscore+\TopComponents分数=+aiscore; System.out.print\n; 持续 }否则,如果玩家==纸张和ai==岩石{ pscore+=1; aiscore+=0; System.out.println您的对手选择+ai+\t您的分数=+pscore+\TopComponents分数=+aiscore; System.out.print\n; 持续 }否则ifplayer==纸张和ai==剪刀{ aiscore+=1; pscore+=0; System.out.println您的对手选择+ai+\t您的分数=+pscore+\TopComponents分数=+aiscore; System.out.print\n; 持续 }否则,如果玩家==剪刀和ai==摇滚乐{ aiscore+=1; pscore+=0; System.out.println您的对手选择+ai+\t您的分数=+pscore+\TopComponents分数=+aiscore; System.out.print\n; 持续 }否则ifplayer==剪刀和ai==纸张{ aiscore+=0; pscore+=1; System.out.println您的对手选择+ai+\t您的分数=+pscore+\TopComponents分数=+aiscore; System.out.print\n; 持续 }否则{ System.out.println输入有效选项; System.out.print\n; 持续 } } } } } 在java中,==测试引用相等性:如果两个对象实际上是同一个对象。包含相同字符的两个字符串将无法通过此检查,这就是逻辑中发生的情况

请参见

,而不是:

if(player == "rock" && ai == "paper"){
    ...
}
使用


这将适用于比较字符串的所有代码。

最好在此处发布代码。如果您这样做,它将始终在这里,而链接的内容可能不在这里!首先看看这个:谢谢大家。顺便说一句,对于我所面临的问题,我不确定要寻找什么。不管怎样,我更新了pastebin链接中的代码,它工作得很好。
if(player.equals("rock") && ai.equals("paper")){
   ...
}