Как найти символ в строке
Поиск всегда ведется с учетом регистра букв.
Первое появление символа
ch
в данной строке
this
можно отследить методом
indexOf(int ch)
, возвращающим индекс этого символа в строке или
-1
, если символа
ch
в строке
this
нет.
Например,
"Молоко", indexOf('о')
выдаст в результате
1
.
Конечно, этот метод выполняет в цикле последовательные сравнения
this.charAt(k++> == ch
, пока не получит значение
true
.
Второе и следующие появления символа
ch
в данной строке
this
можно отследить методом
indexOf(int ch, int ind)
.
Этот метод начинает поиск символа
ch
с индекса
ind
. Если
ind
< о, то поиск идет с начала строки, если
ind
больше длины строки, то символ не ищется, т. е. возвращается -1.
Например,
"молоко".indexof('о', indexof ('о')
+ 1)
даст в результате 3. .
Последнее появление символа
ch
в данной строке
this
отслеживает метод
lastIndexof
(int ch).
Он просматривает строку в обратном
порядке. Если символ
ch
не найден, возвращается.-1.
Например,
"Молоко".lastindexof('о')
даст в результате 5.
Предпоследнее и предыдущие появления символа
ch
в данной строке
this
можно отследить методом
lastIndexof
(int ch, int ind)
, который просматривает строку в обратном порядке, начиная с индекса
ind
.
Если
ind
больше длины строки, то поиск идёт от конца строки, если
ind < о,
то возвращается-1.