Ваш код будет работать, если вы переключите свои if
заявления
if (statement.indexOf("Know") >= 0) {
response = "Why so negative?";
} else if (statement.indexOf("No") >= 0) {
response = "I didn't know that!";
}
Обратите внимание, что indexOf
чувствителен к регистру, поэтому, если вы хотите, чтобы ваш бот обрабатывал эти случаи, вы должны сначала преобразовать свой ввод в нижний регистр, например:
String lower = statement.toLowerCase();
if (lower.indexOf("know") >= 0) {
response = "Why so negative?";
} else if (lower.indexOf("no") >= 0) {
response = "I didn't know that!";
}
Редактировать Использование регулярных выражений будет безопаснее для случаев, когда ваш ввод содержит слова, отличные от «знать» с «нет» в них
Это пример:
String lower = statement.toLowerCase();
if (lower.matches(".*(^| )no( |$).*")) {
response = "Why so negative?";
} else if (lower.matches(".*(^| )know( |$).*") {
response = "I didn't know that!";
}