随机字符串匹配
问题描述:
所以我使用了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");
}
}
显然我不能预测选择哪个字母。
答
您正试图检查从用户读取的字符是否等于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
不客气。快乐黑客! –
你确定要检查字符是否等于扫描仪:)? – matoni