Java Маніпуляція рядком за допомогою EXAMPLE
Що таке рядки Java?
Рядок у буквальному значенні — це послідовність символів. Гей, ти сказав символи, хіба це не примітивний тип даних у Java. Так, в технічному плані базовий Java По суті, рядок — це масив символів.
Отже, мій рядок вище "ROSE” можна представити так:
Навіщо використовувати Strings?
Однією з основних функцій сучасної інформатики є обробка людської мови.
Подібно до того, як числа важливі для математики, мовні символи важливі для значення та прийняття рішень. Хоча користувачі комп’ютерів можуть не бачити це, комп’ютери обробляють мову у фоновому режимі так само точно й точно, як калькулятор. Діалогові вікна довідки містять інструкції. Меню забезпечує вибір. А на дисплеї даних відображаються статуси, помилки та зміни мови в реальному часі.
Як Java програмісте, одним із ваших основних інструментів для зберігання та обробки мови буде клас String.
Приклади синтаксису рядків
Тепер давайте перейдемо до синтаксису, зрештою, нам потрібно це написати Java код не так.
Рядок — це масив символів, представлений у вигляді:
//String is an array of characters char[] arrSample = {'R', 'O', 'S', 'E'}; String strSample_1 = new String (arrSample);
З технічної точки зору рядок визначений у наведеному вище прикладі так:
= new (argument);
Тепер ми не завжди можемо записувати наші рядки як масиви; отже, ми можемо визначити String in Java наступним чином:
//Representation of String String strSample_2 = "ROSE";
У технічному плані вищезазначене представлено як:
= ;
Команда Струнний клас Java продовжується Клас об'єкта.
Конкатенація рядків:
Конкатенація - це з'єднання двох або більше рядків.
Подивіться на картинку нижче -
У нас є два рядки str1 = "Rock" і str2 = "Star"
Якщо ми скласти ці два рядки, ми повинні мати результат str3= “RockStar”.
Перегляньте наведений нижче фрагмент коду, і він пояснює два методи виконання конкатенації рядків.
Перший використовує "конкат” класу String, а другий використовує арифметичний оператор “+”. Обидва результати мають однаковий результат
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); } }
Очікуваний результат:
RockStar RockStar
Важливий 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
Чи хочу я перевірити, чи рядок, згенерований якимось методом, дорівнює тому, що я хочу перевірити? Як мені порівняти два рядки?
Використовуйте метод "порівняти” і вкажіть рядок, який ви хочете порівняти.
Використовуйте «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
Рядковий метод «Contain».
Я частково знаю, що повинен був містити рядок, як мені підтвердити, що рядок містить указану мною послідовність символів?
Використовуйте метод "містить» і вкажіть символи, які потрібно перевірити.
Повернення правда якщо і тільки якщо цей рядок містить вказану послідовність значень char.
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
Рядок методу endsWith
Як підтвердити, що рядок закінчується певним суфіксом? Ви знову відповіли. Використовуйте метод endsWith і вкажіть суфікс в аргументах.
Повернення правда якщо послідовність символів, представлена аргументом, є суфіксом послідовності символів, представленої цим об’єктом.
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. Ви можете вказати частину рядка, яку потрібно замінити, і рядок заміни в аргументах.
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 "до нижнього регістру" & Java Метод «верхнього регістру».
Я хочу, щоб весь мій рядок відображався в нижньому або у верхньому регістрі?
Просто використовуйте методи “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
Важливі моменти, на які слід звернути увагу:
- Рядок є класом Final; тобто після створення значення не можна змінити. Тому об'єкти String називаються незмінними.
- Команда Java Віртуальна машина (JVM) створює область пам’яті спеціально для викликів рядків Пул постійних рядків. Ось чому String можна ініціалізувати без ключового слова new.
- Клас String підпадає під java.lang.Ієрархія рядків. Але немає необхідності імпортувати цей клас. Java платформа надає їх автоматично.
- рядок посилання можна перевизначати, але це не видаляє вміст; тобто якщо
Рядок h1 = «привіт»;
h1 = “привіт”+”світ”;
тоді рядок «hello» не видаляється. Він просто втрачає ручку.
- Кілька посилань можна використовувати для того самого рядка, але це буде відбуваються в тому самому місці; тобто якщо
Рядок h1 = «привіт»;
Рядок h2 = «привіт»;
Рядок h3 = «привіт»;
тоді в пам’яті створюється лише один пул для рядка «hello» з 3 посиланнями-h1,h2,h3
- Якщо число вказано в ” “ тоді воно стає рядком, більше не число. Це означає, якщо
Рядок S1 =”Число: “+ “123”+”456″;
Система.з.println(S1);
тоді він надрукує: Число: 123456
Якщо ініціалізація така:
Рядок S1 = «Число: «+(123+456);
System.out.println(S1);
тоді він надрукує: Число: 579
Це все для Strings!