У меня возникла следующая проблема: предположим, что слова добавляются в словарь, основанный на некоторой структуре данных. Например, добавлены следующие слова:Проверьте, содержит ли словарь какое-то слово
"bob", "dad", "bad"
И предположим, что я хочу, чтобы проверить, если определенное слово в словаре путем реализации метода:
public boolean checkWord(String word)
Однако характер '.'
также представляет некоторые письма, так что если, например: «»
checkWord(".ob")
то результат true
(как могут быть замещенными или представлены b
и будет bob
). Или другой пример:
checkWord("..d")
, который также возвращает true
(из-за "dad"
).
Мне нужна помощь только в том, как проверить соответствие слов. Предположим, что структура данных равна ArrayList
, а словарь представлен как myList
. Мой код всегда дает true
за что-то String
Проезжаю. Пожалуйста, помогите, пожалуйста, помогите мне? Я просто хочу знать, как вернуть true, если словарь содержит "bob"
, а проходящее контрольное слово - ".ob"
, то как я могу опустить символ '.'
и проверить другие символы? Заранее спасибо!
public boolean checkWord(String word){
boolean result = false;
if(myList.contains(word)){
return true;
}
else{
for(int i = 0; i < myList.size(); i++){
if(myList.get(i).length() == word.length()){
for(int j = 0; j < word.length(); j++){
if(word.charAt(j) == myList.get(i).charAt(j)){
result = true;
}
}
}
}
}
return result;
}
'b.b' будет выдавать' истину' также из-за 'bob'? Значение '.' действует как подстановочный знак? – Emz
Не могли бы вы хотя бы попытаться написать хорошее название для своего вопроса. – bhspencer
@Emz, да, вы правы –