Что такое строки?
Строка в буквальном смысле слова представляет собой последовательность символов. Эй, вы сказали символы, разве это не примитивный тип данных в Java? Да, так что с технической точки зрения базовая строка Java — это в основном массив символов.
Таким образом, моя приведенная выше строка « ROSE » может быть представлена следующим образом:
В этом уроке вы узнаете
- Что такое строки?
- Зачем использовать строки?
- Примеры строкового синтаксиса
- Конкатенация строк
- Важные строковые методы Java
Зачем использовать строки?
Одной из основных функций современной информатики является обработка человеческого языка.
Подобно тому, как числа важны для математики, языковые символы важны для значения и принятия решений. Хотя это может быть невидимым для пользователей компьютеров, компьютеры обрабатывают язык в фоновом режиме так же точно, как калькулятор. Диалоги помощи предоставляют инструкции. Меню предоставляют выбор. Дисплеи данных показывают статусы, ошибки и изменения языка в режиме реального времени.
Как программист на Java, одним из ваших основных инструментов для хранения и обработки языка будет класс String.
Примеры строкового синтаксиса
Теперь давайте перейдем к некоторому синтаксису, в конце концов, нам нужно написать это в коде Java, не так ли?
Строка — это массив символов, представленный в виде:
//String is an array of characters char[] arrSample = {'R', 'O', 'S', 'E'}; String strSample_1 = new String (arrSample);
В технических терминах строка определяется следующим образом:
= new (argument);
Теперь мы всегда не можем записывать наши строки как массивы; следовательно, мы можем определить строку в Java следующим образом:
//Representation of String String strSample_2 = "ROSE";
В техническом плане вышесказанное представляется как:
= ;
Строка класса Java расширяет на класс объектов.
Конкатенация строк:
Конкатенация — это соединение двух или более строк.
Посмотрите на картинку ниже
У нас есть две строки str1 = «Rock» и str2 = «Star»
Если мы сложим эти две строки, мы получим результат как str3 = «RockStar».
Проверьте приведенный ниже фрагмент кода, и в нем объясняются два метода выполнения конкатенации строк.
Во- первых использует « Concat » метод класса струнного и второй использует арифметический оператор «+». Оба результата дают одинаковый результат
public class Sample_String{ public static void main(String[] args){ //String Concatenation String str1 = "Rock"; String str2 = "Star"; //Method 1 : Using concat String str3 = str1.concat(str2); System.out.println(str3); //Method 2 : Using "+" operator String str4 = str1 + str2; System.out.println(str4); } }
Важные строковые методы Java:
Давайте зададим классу Java String несколько вопросов и посмотрим, сможет ли он на них ответить;)
Метод строки «Длина»
Как вы будете определять длину данной строки? Я предоставил метод, который называется «длина». Используйте его против строки, вам нужно найти длину.
public class Sample_String{ public static void main(String[] args){ //Our sample string for this tutorial String str_Sample = "RockStar"; //Length of a String System.out.println("Length of String: " + str_Sample.length());}}
вывод:
Length of String: 8
Строка «indexOf» Метод
Если бы я знал длину, как бы я узнал, какой персонаж находится в какой позиции? Короче, как мне найти индекс персонажа?
Вы сами ответили, приятель, есть метод «indexOf», который поможет вам определить местоположение определенного персонажа, который вы укажете.
public class Sample_String{ public static void main(String[] args){//Character at position String str_Sample = "RockStar"; System.out.println("Character at position 5: " + str_Sample.charAt(5)); //Index of a given character System.out.println("Index of character 'S': " + str_Sample.indexOf('S'));}}
Вывод:
Character at position 5: t Index of character 'S': 4
Строка «CharAt» Метод
По аналогии с приведенным выше вопросом, учитывая индекс, как мне узнать символ в этом месте?
Просто снова! Используйте метод charAt и укажите индекс, символ которого вам нужно найти.
public class Sample_String{ public static void main(String[] args){//Character at position String str_Sample = "RockStar"; System.out.println("Character at position 5: " + str_Sample.charAt(5));}}
Вывод:
Character at position 5: t
Строка «CompareTo» Метод
Хочу ли я проверить, равна ли строка, сгенерированная каким-либо методом, чему-то, что я хочу проверить? Как сравнить две строки?
Используйте метод «CompareTo» и укажите строку, которую вы хотите сравнить.
Используйте «CompareToIgnoreCase», если вы не хотите, чтобы результат чувствителен к регистру.
Результат будет иметь значение 0, если строка аргумента равна этой строке; значение меньше 0, если эта строка лексикографически меньше строкового аргумента; и значение больше 0, если эта строка лексикографически больше строкового аргумента.
public class Sample_String{ public static void main(String[] args){//Compare to a String String str_Sample = "RockStar"; System.out.println("Compare To 'ROCKSTAR': " + str_Sample.compareTo("rockstar")); //Compare to - Ignore case System.out.println("Compare To 'ROCKSTAR' - Case Ignored: " + str_Sample.compareToIgnoreCase("ROCKSTAR"));}}
Вывод:
Compare To 'ROCKSTAR': -32 Compare To 'ROCKSTAR' - Case Ignored: 0
Строка «Содержать» Метод
Я частично знаю, что должна была содержать строка, как я могу подтвердить, содержит ли String последовательность символов, которую я указал?
Используйте метод «содержит» и укажите символы, которые необходимо проверить.
Возвращает true тогда и только тогда, когда эта строка содержит указанную последовательность значений символов.
public class Sample_String{ public static void main(String[] args){ //Check if String contains a sequence String str_Sample = "RockStar"; System.out.println("Contains sequence 'tar': " + str_Sample.contains("tar"));}}
Вывод:
Contains sequence 'tar': true
Строка Метод «заканчивается с»
Как я могу подтвердить, заканчивается ли строка определенным суффиксом? Снова ты ответил на это. Воспользуйтесь методом «концом с» и укажите суффикс в аргументах.
Возвращает true, если последовательность символов, представленная аргументом, является суффиксом последовательности символов, представленной этим объектом.public class Sample_String{ public static void main(String[] args){ //Check if ends with a particular sequence String str_Sample = "RockStar"; System.out.println("EndsWith character 'r': " + str_Sample.endsWith("r"));}}
Вывод:
EndsWith character 'r': true
Строка «replaceAll» и метод «replaceFirst»
Я хочу изменить свою строку в нескольких местах и заменить несколько частей строки?
Java String Replace, replaceAll и replaceFirst методы. Вы можете указать часть String, которую вы хотите заменить, и String замены в аргументах.
public class Sample_String{ public static void main(String[] args){//Replace Rock with the word Duke String str_Sample = "RockStar"; System.out.println("Replace 'Rock' with 'Duke': " + str_Sample.replace("Rock", "Duke"));}}
Вывод:
Replace 'Rock' with 'Duke': DukeStar
Строка Java «tolowercase» и метод Java «touppercase»
Я хочу, чтобы вся моя строка отображалась в нижнем или верхнем регистре?
Просто используйте методы «toLowercase ()» или «ToUpperCase ()» для строк, которые необходимо преобразовать.
public class Sample_String{ public static void main(String[] args){//Convert to LowerCase String str_Sample = "RockStar"; System.out.println("Convert to LowerCase: " + str_Sample.toLowerCase()); //Convert to UpperCase System.out.println("Convert to UpperCase: " + str_Sample.toUpperCase());}}
Вывод:
Convert to LowerCase: rockstar Convert to UpperCase: ROCKSTAR
Важные моменты, чтобы отметить:
- Строка — это финальный класс ; т.е. после создания значение не может быть изменено. Таким образом, строковые объекты называются неизменяемыми.
- Виртуальная машина Java (JVM) создает ячейку памяти специально для строк, которая называется пулом констант строк . Вот почему String можно инициализировать без ключевого слова «new».
- Строковый класс подпадает под иерархию java.lang.String . Но нет необходимости импортировать этот класс. Платформа Java предоставляет их автоматически.
- Ссылка на строку может быть переопределена, но это не удаляет содержимое ; т.е. если
Строка h1 = «привет»;
h1 = «привет» + «мир»;
тогда строка «привет» не удаляется. Он просто теряет ручку.
- Несколько ссылок могут использоваться для одной и той же строки, но это будет происходить в одном и том же месте ; т.е. если
Строка h1 = «привет»;
Строка h2 = «привет»;
Строка h3 = «привет»;
тогда в памяти создается только один пул для строки «привет» с 3 ссылками-h1, h2, h3
- Если число заключено в «», оно становится строкой , а не числом. Это означает, что если
Строка S1 = «Номер:» + «123» + «456»;
Система. out .println (S1);
тогда он напечатает: номер: 123456
Если инициализация такая:
Строка S1 = «Номер:» + (123 + 456);
Система. out .println (S1);
тогда он напечатает: число: 579 Это все в строки!