Я пытаюсь создать программу, которая будет генерировать три случайные буквы. Затем пользователь должен будет ввести слово, содержащее эти буквы, и является допустимым словом, содержащимся в словаре. Но проблема, с которой я сталкиваюсь, заключается в том, что я не уверен, как я буду проверять, содержит ли слово, которое вводит пользователь, три буквы, которые были случайно сгенерированы. Тогда проверка его на части словаря проста.Проверьте, содержит ли слово определенные буквы?
-1
A
ответ
1
if(userStr.contains("rl1") && userStr.contains("rl2") && userStr.contains("rl3")) {
//user string contains random letter
}
0
Вы можете сделать использовать indexOf(char)
найти, если слово содержит букву.
Если символ присутствует в строке, он возвращает индекс (> = 0). Если нет, то возвращает -1. Таким образом, неотрицательное возвращаемое значение означает, что символ присутствует в слове.
Random r = new Random();
char c1 = (char) (r.nextInt(26) + 'a');
char c2 = (char) (r.nextInt(26) + 'a');
char c3 = (char) (r.nextInt(26) + 'a');
String word = "example";
if(word.toLowerCase().indexOf(c1) >= 0 && word.toLowerCase().indexOf(c2) >= 0 && word.toLowerCase().indexOf(c3) >= 0)
System.out.println("true");
else
System.out.println("try again");