如果等于数组字符,如何检查用户输入

时间:2017-11-26 09:38:23

标签: java arrays

   while(...) {
        if (!(input >= 'A' && input <= 'Z')){
                System.out.println("Invalid input:" + input);}
        else {
            for (int i=0 ; i<randomWordToGuess.length ; i++) {
                if(randomWordToGuess[i] == input ) {
                   playerGuess[i] = input;
                }
            }
        }
  }

如何检查用户输入是否等于数组的字符 像:

  1. 如果用户输入&#39; B&#39;,假设数组有B,则将其存储到playerGuess[i]
  2. 如果用户输入&#39; F&#39;,假设这不在数组中,请将其存储到invalidGuess[i]

1 个答案:

答案 0 :(得分:0)

使用阵列,你可能没有直接的方式,但你没有&#39;真的有选择,因为输入字母可能会出现多次,并且在单词的任何位置都要猜测,你必须加工所有这些。

因此,您应该迭代元素并将每个元素与输入进行比较,直到匹配或最后一个元素。

for (int i=0 ; i<randomWordToGuess.length ; i++){
     if(randomWordToGuess[i] == input ) {
           playerGuess[i] = input;
           break;               
      }
     invalidGuess[i] = input;
}

但你可以使用包含要猜的字母的Set进行第一次检查,如果没有字母匹配则避免迭代。