我正在做一个刽子手任务,但我被困在其中的一部分;
玩家(用户)正在与计算机玩游戏。 用户几次玩游戏。当他们停止时,显示用户的总分。 每次播放用户都会看到一个菜单。
String S;
int s2;
System.out.println("WELCOME TO WORD GAME V.12.01.16");
System.out.println("****MENU****");
System.out.println("FIRST YOUR NUMBER AND PRESS 'ENTER' ");
System.out.printf("0:Stop \n 1:Name \n 2:City \n 3:Animal \n 4:Thing ");
s=input.nextInt();
if(s==0) {
System.out.println("GOODBYE");
}
for(int i=0;i<category.length;i++) {
if(s==i){
System.out.println("GUESS FOR 1,CHARACTER FOR 2");
s2=input.nextInt();
if(s2==1){
System.out.println("ENTER YOUR GUESS");
S=input.nextLine();
boolean result=correct(S);
if(result==true) {
System.out.println("Congrats");
}
}
}
}
}
public static boolean correct(String X) {
for(int i=1;i<5;i++){
for(int j=0;j<10;j++){
if (category[i][j].equals(X)) {
}
}
}
return true;
}
}
答案 0 :(得分:1)
你的if语句if(category[s][j]==S);
以错误的方式完成
@resueman在他的comment中也注意到比较字符串的方式也是错误的。您想使用.equals()
来比较字符串。
S=input.nextLine();
System.out.println("Please Enter : ")
for(int j=0;j<11;j++){
if (category[s][j].equals(S)){
System.out.println("CONGRATS");
}else {
System.out.println("FAIL");
}
}
编辑 - 来自OPs编辑的新代码
public static void main(String args[]) {
String string;
Scanner input = new Scanner(System.in);
int s, s2;
System.out.println("WELCOME TO WORD GAME V.12.01.16");
System.out.println(
"****MENU****");
System.out.println(
"FIRST YOUR NUMBER AND PRESS 'ENTER' ");
System.out.printf(
"0:Stop \n 1:Name \n 2:City \n 3:Animal \n 4:Thing ");
s = input.nextInt();
if (s == 0) {
System.out.println("GOODBYE");
}
for (int i = 0; i < category.length; i++) {
if (s == i) {
System.out.println("GUESS FOR 1,CHARACTER FOR 2");
s2 = input.nextInt();
if (s2 == 1) {
System.out.println("ENTER YOUR GUESS");
string = input.nextLine();
// Dont need to assign the boolean to a value
// if(booleanVariable == true) is the same thing as writing if(boolean)
// If it is true, it will execute, if false it will not
if (correct(string)) {
System.out.println("Congrats");
}
} // if(s2==1)
}// if (s == i)
}// for
}// run
public static boolean correct(String X) {
for (int i = 1; i < 5; i++) {
for (int j = 0; j < 10; j++) {
if (category[i][j].equals(X)) {
// the guess was right
return true;
}
}
}
// Nothing equaled the guess
return false;
}