На сколько я поняла, нужно сначала найти индекс первой буквы слова "code", когда это слово встречается в первый раз, а во втором методе найти индекс первой буквы слова "code", когда оно встречается второй раз? Просто, если подсчитать, то индекс во втором методе должен быть 57, а не 50, как в условии.. может я что-то недопонимаю и это ошибка в описании задачи?
package en.javarush.task.pro.task09.task0913;
/*
Searching in a string
*/
public class Solution {
public static void main(String[] args) {
String string = "To become a programmer, you need to write code. To write code, you have to learn. To learn, you need desire.";
String word = "code";
int indexOfFirstWord = getIndexOfFirstWord(string, word);
int indexOfLastWord = getIndexOfLastWord(string, word);
System.out.println("The index of the first character of the first instance of the word \"" + word + "\" is " + indexOfFirstWord);
System.out.println("The index of the first character of the last instance of the word \"" + word + "\" is " + indexOfLastWord);
}
public static int getIndexOfFirstWord(String string, String word) {
int indexOfFirstWord = string.indexOf(word);
if (indexOfFirstWord != -1)
return indexOfFirstWord;
else
return 0;
}
public static int getIndexOfLastWord(String string, String word) {
int indexOfFirstWord = string.indexOf(word);
int indexOfLastWord = string.indexOf(word, indexOfFirstWord + 1);
if (indexOfLastWord != -1)
return indexOfLastWord;
else
return 0;
}
}