Цель состоит в том, чтобы подсчитать количество «xx» в данной строке. Мы скажем, что перекрытие разрешено, поэтому «xxx» содержит 2 «xx».Почему эта базовая программа java не работает?
См http://codingbat.com/prob/p194667 Я не могу понять, почему он не работает
int countXX(String str) {
int f = 0;
for (int i = 0; i < str.length(); i++){
if (!str.substring(i+1).isEmpty()){
if (str.substring(i) == "x" && str.substring (i+1) == "x") {
f++;
}
}
}
return f;
}
Это распространенная ошибка при запуске. Быть осторожен. – Lion
Неправильно сравнивать строковые значения с '==', этот вопрос связан с неправильным использованием 'substring' для извлечения символа. – rgettman
Я проголосовал за возобновление этого вопроса; это не дубликат какой-либо общей проблемы сравнения строк «==» и «равно». – rgettman