Какие особенности и методы работы со строками в Java вы знаете?

В Java строки представлены классом String, который является неизменяемым (immutable). Это значит, что после создания объекта строки его содержимое нельзя изменить. При изменении строки создаётся новый объект.

Короткий ответ

Что ответить на собеседовании

В Java строки представлены классом String, который является неизменяемым (immutable). Это значит, что после создания объекта строки его содержимое нельзя изменить. При изменении строки создаётся новый объект.

Подробный разбор

Ответ с пояснениями

В Java строки представлены классом String, который является неизменяемым (immutable). Это значит, что после создания объекта строки его содержимое нельзя изменить. При изменении строки создаётся новый объект.

Основные особенности и методы работы со строками:

  • Создание строк:

    String s = "Пример";
    
  • Конкатенация: Использование оператора + или метода concat().

    String s1 = "Hello";
    String s2 = "World";
    String s3 = s1 + " " + s2; // "Hello World"
    
  • Длина строки: Метод length() возвращает количество символов.

  • Получение символа: Метод charAt(int index) возвращает символ по индексу.

  • Сравнение строк:

    • equals() — сравнение содержимого.
    • equalsIgnoreCase() — сравнение без учёта регистра.
    • compareTo() — лексикографическое сравнение.
  • Поиск подстроки: Методы indexOf(), lastIndexOf().

  • Извлечение подстроки: Метод substring(int beginIndex, int endIndex).

  • Преобразование регистра: Методы toLowerCase(), toUpperCase().

  • Удаление пробелов: Метод trim() удаляет пробелы в начале и конце.

  • Разбиение строки: Метод split(String regex) возвращает массив подстрок.

Для частых изменений строк рекомендуется использовать классы StringBuilder или StringBuffer, которые являются изменяемыми и эффективными для конкатенаций в циклах.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее