Основні операції з рядками

Клас String дозволяє працювати з рядками, доступними тільки для читання, і підтримує операції з ними Рядки можуть створюватися неявним чином за допомогою укладеної в лапки послідовності символів (Наприклад, GrцЯe) або за рахунок виконання оператора + або + = над двома обєктами String

Крім того, допускається і явне побудова обєктів String оператором new У класі

String передбачені наступні конструктори:

public String()

Конструює новий обєкт String, значення якого дорівнює “. public String(String value)

Конструює новий обєкт String, що є копією заданого

При роботі з обєктами String використовуються два базових методи – length і charAt Метод length повертає кількість символів у рядку, а метод charAt – символ у заданій позиції Наведений нижче цикл підраховує кількість входжень кожного із символів в рядок:

for (int i = 0 i &lt&lt strlength() i++)

counts[strcharAt(i)]++

При спробі звернутися в методі charAt або будь-якому іншому методі String до позиції, номер якої відємний або перевищує length () -1, збуджується виключення IndexOutOfBoundsException Подібні невірні звернення зазвичай обумовлені наявністю помилок у програмі

Крім того, є прості методи для пошуку в рядку першого або останнього входження конкретного символу або підрядка Наступний метод повертає кількість символів між першим і останнім входженням заданого символу в рядку:

static int countBetween(String str, char ch) {

int begPos = strindexOf(ch)

if (begPos << 0) / / не входить

return -1

int endPos = strlastIndexOf(ch)

return endPos – begPos – 1

}

Даний метод знаходить першу і останню позицію символу ch в рядку str Якщо символ входить в рядок менше двох разів, метод повертає -1 Різниця між номерами позицій перевищує на одиницю кількість символів між ними (кількість символів між позиціями 2 і 3 дорівнює 0)

Існує кілька перевантажених варіантів методу indexOf для пошуку в прямому напрямку і методу lastIndexOf – для пошуку в зворотному напрямку Кожен з методів повертає номер знайденої позиції або -1, якщо пошук виявився безуспішним:

Метод

Значення, що повертається

indexOf(char ch)

перша позиція ch

indexOf(char ch, int start)

перша позиція ch start

indexOf(String str)

перша позиція str

indexOf(String str, int start)

перша позиція str start

lastIndexOf(char ch)

остання позиція ch

lastIndexOf(char ch, int start)

остання позиція ch start

lastIndexOf(String  str)

остання позиція str

lastIndexOf(String  str, int start)

остання позиція str start

Вправа 81

Напишіть метод, який підраховує кількість входжень даного символу в рядок

Вправа 82

Напишіть метод, який підраховує кількість входжень деякою підрядка в цей рядок

Джерело: Арнольд К, Гослінг Д – Мова програмування Java (1997)

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*