2017-02-11 157 views
1

所以我使用了generateRandomChars等我提供的字符串,看起來像這樣;隨機字符串匹配

System.out.println(generateRandomChars("ABCD", 1)); //Takes 1 random letter. 

我有越來越的用戶以匹配輸出的問題,我已經嘗試過了,但它仍然說不準甚至在選擇的字符是正確的。這是我堅持的一點。

Scanner a = new Scanner((System.in)); 
String character = a.nextLine(); 
if(character.equals(a)){ 
System.out.println("Yes"); 
} 

else (!character.equals(a)) { 
System.out.println("No"); 
} 
} 

顯然我不能預測選擇哪個字母。

+1

你確定要檢查字符是否等於掃描儀:)? – matoni

回答

1

您正試圖檢查從用戶讀取的字符是否等於Scanner對象(由變量a引用),該對象將始終爲false。

您需要存儲打印之前在一個變量產生的信:

String generated = generateRandomChars("ABCD", 1); 
System.out.println(generated); 

然後,你其實可以做的比較:

if (character.equals(generated)) { ... } 

注意:確保generateRandomChars返回一個String ,而不是一個Character實例,但(「a」不等於java中的'a')

+0

啊,這樣做更有意義,感謝您的幫助! – ODoe

+0

不客氣。快樂黑客! –