Я пишу код, чтобы увидеть, есть ли xyz в середине данной строки. Это работает, если xyz появляется один раз, но когда он появляется более одного раза, он не всегда будет работать.Код не работает должным образом - посредине слова
public boolean xyzMiddle(String str) {
if (str.length() <= 2) {
return false;
}
int count1 = 0;
int count2 = 0;
for (int i=(str.length()-2)/2; i<str.length()-2; i++) {
if (str.substring(i, i+3).equals("xyz")) {
count1 = str.substring(0, i).length();
count2 = str.substring(i+3).length();
}
}
if (count1 == count2 || count1+1 == count2 || count2+1 == count1) {
return true;
}
return false;
}
Ваша программа возвращает 'истина', даже если вход' abcd' – Maroun
Почему бы не использовать строку, содержащую метод? –
Это четвертый вопрос, который вы задаете за один час. Потратьте некоторое время, чтобы подумать, отлаживать, читать javadoc, экспериментировать, а не просить других исправить ваш код. Вот как вы узнаете. –