Обработка строк в Java: функции и методы с ПРИМЕРОМ

Содержание:

Anonim

Что такое струны?

Строка в буквальном смысле - это последовательность символов. Эй, вы сказали символы, разве это не примитивный тип данных в Java. Да, так что с технической точки зрения базовая строка Java - это, по сути, массив символов.

Таким образом, моя вышеупомянутая строка « РОЗА » может быть представлена ​​следующим образом:

В этом руководстве вы узнаете:

  • Что такое струны?
  • Зачем использовать струны?
  • Примеры синтаксиса строк
  • Конкатенация строк
  • Важные строковые методы Java

Зачем использовать струны?

Одна из основных функций современной информатики - обработка человеческого языка.

Подобно тому, как числа важны для математики, языковые символы важны для значения и принятия решений. Хотя это может быть незаметно для пользователей компьютеров, компьютеры обрабатывают язык в фоновом режиме так же точно и точно, как калькулятор. В диалоговых окнах справки содержатся инструкции. Меню предоставляют выбор. А дисплеи данных показывают статусы, ошибки и изменения языка в реальном времени.

Как Java-программист, одним из ваших основных инструментов для хранения и обработки языка будет класс String.

Примеры синтаксиса строк

Теперь давайте перейдем к синтаксису, в конце концов, нам нужно написать это в Java-коде, не так ли.

Строка - это массив символов, представленный как:

//String is an array of characterschar[] arrSample = {'R', 'O', 'S', 'E'};String strSample_1 = new String (arrSample);

С технической точки зрения, String в приведенном выше примере определяется следующим образом:

= new (argument);

Теперь мы всегда не можем записывать наши строки в виде массивов; следовательно, мы можем определить String в Java следующим образом:

//Representation of StringString strSample_2 = "ROSE";

Технически это представлено как:

= ;

Строка класса Java расширяет на класс объектов.

Конкатенация строк:

Конкатенация - это соединение двух или более строк.

Взгляните на картинку ниже -

У нас есть две строки: str1 = «Rock» и str2 = «Star».

Если мы сложим эти две строки, мы должны получить результат как str3 = «RockStar».

Ознакомьтесь с приведенным ниже фрагментом кода, в котором объясняются два метода конкатенации строк.

Во-первых, используется метод « concat » класса String, а во-вторых, используется арифметический оператор «+». Оба результата дают один и тот же результат

открытый класс Sample_String {public static void main (String [] args) {// Объединение строкСтрока str1 = "Рок";Строка str2 = "Звезда";// Метод 1: Использование concatСтрока str3 = str1.concat (str2);System.out.println (str3);// Способ 2: Использование оператора "+"Строка str4 = str1 + str2;System.out.println (str4);}}

Важные строковые методы Java:

Давайте зададим классу Java String несколько вопросов и посмотрим, сможет ли он на них ответить;)

Строка "Длина" Метод

Как вы определите длину данной строки? Я предоставил метод под названием «длина». Используйте его против строки, которая вам нужна, чтобы найти длину.

открытый класс Sample_String {public static void main (String [] args) {// Наша примерная строка для этого руководстваСтрока str_Sample = "RockStar";// Длина строкиSystem.out.println ("Длина строки: + str_Sample.length ());}}

выход:

Length of String: 8

String Метод "indexOf"

Если я знаю длину, как мне узнать, какой символ находится в какой позиции? Короче, как мне найти индекс персонажа?

Вы сами ответили, приятель, есть метод indexOf, который поможет вам определить местонахождение конкретного символа, который вы укажете.

открытый класс Sample_String {public static void main (String [] args) {// Символ в позицииСтрока str_Sample = "RockStar";System.out.println ("Символ в позиции 5: + str_Sample.charAt (5));// Индекс данного символаSystem.out.println ("Индекс символа 'S': + str_Sample.indexOf ('S'));}}

Выход:

Character at position 5: tIndex of character 'S': 4

String Метод "charAt"

Как и в предыдущем вопросе, учитывая индекс, как мне узнать персонажа в этом месте?

Опять простой !! Используйте метод charAt и укажите индекс, символ которого вам нужно найти.

открытый класс Sample_String {public static void main (String [] args) {// Символ в позицииСтрока str_Sample = "RockStar";System.out.println ("Символ в позиции 5: + str_Sample.charAt (5));}}

Выход:

Character at position 5: t

String Метод "CompareTo"

Я хочу проверить, совпадает ли строка, созданная каким-либо методом, с чем-то, что я хочу проверить? Как сравнить две строки?

Используйте метод compareTo и укажите строку, которую вы хотите сравнить.

Используйте «compareToIgnoreCase», если вы не хотите, чтобы результат был чувствительным к регистру.

Результат будет иметь значение 0, если строка аргумента равна этой строке; значение меньше 0, если эта строка лексикографически меньше, чем строковый аргумент; и значение больше 0, если эта строка лексикографически больше, чем строковый аргумент.

открытый класс Sample_String {public static void main (String [] args) {// Сравните со строкойСтрока str_Sample = "RockStar";System.out.println ("Сравнить с 'ROCKSTAR': + str_Sample.compareTo ("rockstar"));// Сравнить с - игнорировать регистрSystem.out.println ("Сравнить с 'ROCKSTAR' - регистр игнорируется: + str_Sample.compareToIgnoreCase ("ROCKSTAR"));}}

Выход:

Compare To 'ROCKSTAR': -32Compare To 'ROCKSTAR' - Case Ignored: 0

String "Содержит" метод

Я частично знаю, что должна была содержать строка, как мне подтвердить, содержит ли строка указанную мной последовательность символов?

Воспользуйтесь методом «содержит» и укажите символы, которые нужно проверить.

Возвращает true тогда и только тогда, когда эта строка содержит указанную последовательность значений char.
открытый класс Sample_String {public static void main (String [] args) {// Проверяем, содержит ли строка последовательностьСтрока str_Sample = "RockStar";System.out.println ("Содержит последовательность 'tar': + str_Sample.contains ("tar"));}}

Выход:

Contains sequence 'tar': true

String Метод "endsWith"

Как я могу подтвердить, заканчивается ли строка определенным суффиксом? Вы снова ответили на это. Используйте метод «ndsWith »и укажите суффикс в аргументах.

Возвращает истину, если последовательность символов, представленная аргументом, является суффиксом последовательности символов, представленной этим объектом.
открытый класс Sample_String {public static void main (String [] args) {// Проверяем, заканчивается ли определенная последовательностьСтрока str_Sample = "RockStar";System.out.println ("EndsWith character 'r': + str_Sample.endsWith ("r"));}}

Выход:

EndsWith character 'r': true

String Метод replaceAll & replaceFirst

Я хочу изменить свою строку в нескольких местах и ​​заменить несколько частей строки?

Java String Методы Replace, replaceAll и replaceFirst. Вы можете указать часть строки, которую хотите заменить, и заменяемую строку в аргументах.

открытый класс Sample_String {public static void main (String [] args) {// Замените Rock словом DukeСтрока str_Sample = "RockStar";System.out.println ("Замените 'Rock' на 'Duke': + str_Sample.replace ("Rock", "Duke"));}}

Выход:

Replace 'Rock' with 'Duke': DukeStar

Строковый Java-метод "tolowercase" и Java "touppercase"

Я хочу, чтобы вся моя строка отображалась строчными или прописными буквами?

Просто используйте методы toLowercase () или ToUpperCase () для строк, которые необходимо преобразовать.

открытый класс Sample_String {public static void main (String [] args) {// Преобразовать в нижний регистрСтрока str_Sample = "RockStar";System.out.println ("Преобразовать в нижний регистр: + str_Sample.toLowerCase ());// Преобразовать в верхний регистрSystem.out.println ("Преобразовать в верхний регистр: + str_Sample.toUpperCase ());}}

Выход:

Convert to LowerCase: rockstarConvert to UpperCase: ROCKSTAR

Важные замечания:

  • String - это класс Final ; т.е. однажды созданная стоимость не может быть изменена. Таким образом, объекты String называются неизменяемыми.
  • Виртуальная машина Java (JVM) создает область памяти специально для строк, называемую пулом констант строк . Вот почему String можно инициализировать без ключевого слова new.
  • Класс String относится к иерархии java.lang.String . Но нет необходимости импортировать этот класс. Платформа Java предоставляет их автоматически.
  • Ссылку на строку можно переопределить, но это не приведет к удалению содержимого ; то есть, если

Строка h1 = "привет";

h1 = «привет» + «мир»;

тогда строка "hello" не удаляется. Он просто теряет ручку.

  • Для одной и той же String можно использовать несколько ссылок, но они будут находиться в одном месте ; то есть, если

Строка h1 = "привет";

Строка h2 = "привет";

Строка h3 = "привет";

тогда в памяти создается только один пул для String «hello» с 3 ссылками-h1, h2, h3

  • Если число заключено в кавычки «», оно становится строкой , а не числом. Это означает, что если

Строка S1 = "Число: + "123" + "456";

Система. out .println (S1);

затем он напечатает: Номер: 123456

Если инициализация такая:

Строка S1 = "Число: + (123 + 456);

Система. out .println (S1);

затем он напечатает: Число: 579 Это все, что касается строк!