Код
|
Описание
|
\t
|
Вставить символ табуляции
|
\b
|
Вставить символ возврата на один символ
|
\n
|
Вставить символ новой строки
|
\r
|
Вставить символ возврата каретки
|
\f
|
Вставить символ прогона страницы
|
\'
|
Вставить одинарную кавычку
|
\"
|
Вставить двойную кавычку
|
\\
|
Вставить обратный слеш
|
Методы класса String
У класса String очень много методов: одних только конструкторов у него 18 штук! Поэтому ниже я приведу только самые часто используемые:
Методы
|
Описание
|
int length()
|
Возвращает количество символов в строке
|
boolean isEmpty()
|
Проверяет, что строка == пустая строка
|
boolean isBlank()
|
Проверяет, что в строке — только whitespace-символы: пробел, tab, enter и т.п.
|
char charAt(int index)
|
Возвращает символ, который стоит на index-позиции в строке.
|
char[] toCharArray()
|
Возвращает массив символов (копию), из которых состоит строка
|
byte[] getBytes()
|
Преобразует строку в набор байт и возвращает массив байт.
|
String[] split(String regex)
|
Разделяет строку на несколько подстрок.
|
String join(CharSequence delimiter, elements)
|
Склеивает вместе несколько подстрок
|
String intern()
|
Помещает строку в пул StringPool.
|
1. Сравнение строк
Сравнение — одна из самых частых вещей, которая делается со строками. У класса String более десяти различных методов, которые используются для сравнения строк со строками. Ниже мы рассмотрим 8 основных.
Методы
|
Описание
|
boolean equals(String str)
|
Строки считаются равными, если все их символы совпадают.
|
boolean equalsIgnoreCase(String str)
|
Сравнивает строки, игнорируя регистр (размер) букв
|
int compareTo(String str)
|
Сравнивает строки лексикографически. Возвращает 0, если строки равны. Число меньше нуля, если текущая строка меньше строки-параметра. Число больше нуля, если текущая строка больше строки-параметра
|
int compareToIgnoreCase(String str)
|
Сравнивает строки лексикографически, игнорирует регистр. Возвращает 0, если строки равны. Число меньше нуля, если текущая строка меньше строки-параметра. Число больше нуля, если текущая строка больше строки-параметра
|
boolean regionMatches(int toffset, String str, int offset, int len)
|
Сравнивает части строк
|
boolean startsWith(String prefix)
|
Проверяет, что текущая строка начинается со строки prefix
|
boolean endsWith(String suffix)
|
Проверят, что текущая строка заканчивается на строку suffix
|
2. Поиск подстрок
Вторая по популярности операция после сравнения строк — это поиск одной строки в другой. Для этого у класса String тоже есть немного методов:
Методы
|
Описание
|
int indexOf(String str)
|
Ищет строку str в текущей строке. Возвращает индекс первого символа встретившейся строки.
|
int indexOf(String str, int index)
|
Ищет строку str в текущей строке, пропустив index первых символов. Возвращает индекс найденного вхождения.
|
int lastIndexOf(String str)
|
Ищет строку str в текущей строке с конца. Возвращает индекс первого вхождения.
|
int lastIndexOf(String str, int index)
|
Ищет строку str в текущей строке с конца, пропустив index первых символов.
|
boolean matches(String regex)
|
Проверяет, что текущая строка совпадает с шаблоном, заданным регулярным выражением.
|
3. Создание подстрок
Кроме сравнения строк и поиска подстрок, есть еще одно очень популярное действие — получение подстроки из строки. В предыдущем примере вы как раз видели вызов метода substring(), который возвращал часть строки.
Вот список из 8 методов получения подстрок из текущей строки:
Методы
|
Описание
|
String substring(int beginIndex, int endIndex)
|
Возвращает подстроку, заданную интервалом символов beginIndex..endIndex.
|
String repeat(int count)
|
Повторяет текущую строку count раз
|
String replace(char oldChar, char newChar)
|
Возвращает новую строку: заменяет символ oldChar на символ newChar
|
String replaceFirst(String regex, String replacement)
|
Заменяет в текущей строке подстроку, заданную регулярным выражением.
|
String replaceAll(String regex, String replacement)
|
Заменяет в текущей строке все подстроки, совпадающие с регулярным выражением.
|
String toLowerCase()
|
Преобразует строку к нижнему регистру
|
String toUpperCase()
|
Преобразует строку к верхнему регистру
|
String trim()
|
Удаляет все пробелы в начале и конце строки
|
Метод Arrays.toString()
int[] array = {1, 2, 3};
String str = Arrays.toString(array); Метод Arrays.deepToString()
int[] array = {1, 2, 3};
String str = Arrays.deepToString(array);
Метод Arrays.equals()
int[] x1 = {1, 2, 3};
int[] x2 = {1, 2, 3};
Arrays.equals(x1, x2);
Метод Arrays.deepEquals()
int[][] x1 = {{1, 2, 3}, {4, 5, 6}};
int[][] x2 = {{1, 2, 3}, {4, 5, 6}};
Arrays.deepEquals(x1, x2);
метод Arrays.fill(): заполняет переданный массив переданным значением.
int[] x = new int[100];
Arrays.fill(x, 999);
int[] x = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
Arrays.fill(x, 3, 7, 999);
String str = Arrays.toString(x);
Arrays.copyOf()
int[] x = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int[] x2 = Arrays.copyOf(x, 5); - "[1, 2, 3, 4, 5]"
String str2 = Arrays.toString(x2);
int[] x3 = Arrays.copyOf(x, 15); "[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 0, 0, 0, 0, 0]"
String str3 = Arrays.toString(x3);
Arrays.copyOfRange()
int[] x = {11, 12, 13, 14, 15, 16, 17, 18, 19, 20};
int[] x2 = Arrays.copyOfRange(x, 5, 10); - "[16, 17, 18, 19, 20]"
int[] x3 = Arrays.copyOfRange(x, 5, 15); - "[16, 17, 18, 19, 20, 0, 0, 0, 0, 0]"
Arrays.sort()Этот метод сортирует переданный массив по возрастанию.
int[] x = {11, -2, 3, 0, 999, -20, 8, -20, 99, -20};
Arrays.sort(x); - "[-20, -20, -20, -2, 0, 3, 8, 11, 99, 999]"
Arrays.sort(имя, первый, последний); сортировка части массива
Arrays.binarySearch()искать заданное значение в массиве. Это не обычный поиск, а так называемый бинарный поиск. Суть его заключается вот в чем:
-
Предварительно массив сортируется.
-
Затем средний элемент массива сравнивается с искомым (с тем, который мы ищем).
-
Если искомый больше среднего, поиск продолжается в правой половине массива.
-
Если искомый элемент меньше среднего, поиск продолжается в левой половине массива.
int index = Arrays.binarySearch(имя, значение);
если в массиве вообще нет того, что мы ищем, алгоритм вернёт отрицательный индекс.
split() – разбить строку на несколько частей
StringTokenizer– разделять строку на подстроки.
String nextToken()-Возвращает следующую подстроку
boolean hasMoreTokens()–Проверяет, есть ли еще подстроки.
Do'stlaringiz bilan baham: |