Рядок — це послідовність символів. У Java об’єкти String є незмінними, що означає константу, і їх неможливо змінити після створення.
Створення рядка
Існує два способи створення рядка в Java:
1. Рядковий літерал
String s = techcodeview.com;>
2. Використання новий ключове слово
String s = new String (techcodeview.com);>
Конструктори рядків у Java
1. Рядок(byte[] byte_arr)
Побудуйте новий рядок, декодуючи масив байтів . Для декодування використовується стандартний набір символів платформи.
приклад:
byte[] b_arr = {71, 101, 101, 107, 115}; String s_byte =new String(b_arr); //Geeks>2. String(byte[] byte_arr, Charset char_set)
Побудуйте новий рядок, декодуючи масив байтів . Він використовує char_set для розшифровки.
приклад:
byte[] b_arr = {71, 101, 101, 107, 115}; Charset cs = Charset.defaultCharset(); String s_byte_char = new String(b_arr, cs); //Geeks>3. String(byte[] byte_arr, String char_set_name)
Побудуйте новий рядок, декодуючи масив байтів . Він використовує назва_набору_символів для розшифровки. Це виглядає подібно до наведених вище конструкцій, і вони з’являються перед схожими функціями, але вони займають Рядок (який містить char_set_name) як параметр, поки конструктор вище приймає CharSet.
приклад:
byte[] b_arr = {71, 101, 101, 107, 115}; String s = new String(b_arr, 'US-ASCII'); //Geeks>4. Рядок (byte[] byte_arr, int start_index, int length)
Побудуйте новий рядок із масив байтів в залежності від start_index(Початкове розташування) і довжина (кількість символів від початкового розташування).
приклад:
byte[] b_arr = {71, 101, 101, 107, 115}; String s = new String(b_arr, 1, 3); // eek>5. Рядок (byte[] byte_arr, int start_index, int length, Charset char_set)
Побудуйте новий рядок із масив байтів в залежності від start_index(Початкове розташування) і довжина (кількість символів від початкового місця) .Використання char_set для розшифровки.
приклад:
javafx на eclipse
byte[] b_arr = {71, 101, 101, 107, 115}; Charset cs = Charset.defaultCharset(); String s = new String(b_arr, 1, 3, cs); // eek>6. String(byte[] byte_arr, int start_index, int length, String char_set_name)
Побудуйте новий рядок із масив байтів в залежності від start_index(Початкове розташування) і довжина (кількість символів від початкового місця) .Використання назва_набору_символів для розшифровки.
приклад:
byte[] b_arr = {71, 101, 101, 107, 115}; String s = new String(b_arr, 1, 4, 'US-ASCII'); // eeks>7. String(char[] char_arr)
Виділяє новий рядок із заданого Масив символів
приклад:
конструктор рядків
char char_arr[] = {'G', 'e', 'e', 'k', 's'}; String s = new String(char_arr); //Geeks>8. String(char[] char_array, int start_index, int count)
Виділяє рядок із заданого масив символів але вибирайте рахувати персонажі з початковий_індекс .
приклад:
char char_arr[] = {'G', 'e', 'e', 'k', 's'}; String s = new String(char_arr , 1, 3); //eek>9. Рядок (int[] uni_code_points, int offset, int count)
Виділяє рядок із a uni_code_array але вибирайте рахувати персонажі з початковий_індекс .
приклад:
int[] uni_code = {71, 101, 101, 107, 115}; String s = new String(uni_code, 1, 3); //eek>10. Рядок (StringBuffer s_buffer)
Виділяє новий рядок із рядка в s_buffer
приклад:
StringBuffer s_buffer = new StringBuffer('Geeks'); String s = new String(s_buffer); //Geeks>11. Рядок (StringBuilder s_builder)
Виділяє новий рядок із рядка в s_builder
приклад:
StringBuilder s_builder = new StringBuilder('Geeks'); String s = new String(s_builder); //Geeks>
Рядкові методи в Java
1. int length()
Повертає кількість символів у рядку.
'techcodeview.com'.length(); // returns 13>
2. Char charAt(int i)
Повертає символ iтисіндекс.
'techcodeview.com'.charAt(3); // returns ‘k’>
3. Підрядок рядка (int i)
Повернути підрядок із iтиссимвол індексу до кінця.
'techcodeview.com'.substring(3); // returns ksforGeeks>
4. Підрядок рядка (int i, int j)
Повертає підрядок від i до j-1 індексу.
'techcodeview.com'.substring(2, 5); // returns eks>
5. String concat (String str)
З’єднує вказаний рядок до кінця цього рядка.
String s1 = Geeks; String s2 = forGeeks; String output = s1.concat(s2); // returns techcodeview.com>
6. int indexOf (рядок s)
Повертає індекс у рядку першого входження вказаного рядка.
Якщо String s відсутній у вхідному рядку, то -1 повертається як значення за замовчуванням.
1. String s = Learn Share Learn; int output = s.indexOf(Share); // returns 6 2. String s = 'Learn Share Learn' int output = s.indexOf(Play); // return -1>
7. int indexOf (рядок s, int i)
Повертає індекс у рядку першого входження вказаного рядка, починаючи з указаного індексу.
String s = Learn Share Learn; int output = s.indexOf('ea',3);// returns 13>8. Int lastIndexOf( рядок s)
Повертає індекс у рядку останнього входження вказаного рядка.
Якщо String s відсутній у вхідному рядку, то -1 повертається як значення за замовчуванням.
1. String s = Learn Share Learn; int output = s.lastIndexOf('a'); // returns 14 2. String s = 'Learn Share Learn' int output = s.indexOf(Play); // return -1>9. логічне значення дорівнює (об’єкт otherObj)
Порівнює цей рядок із вказаним об’єктом.
k алгоритм кластеризації
Boolean out = Geeks.equals(Geeks); // returns true Boolean out = Geeks.equals(geeks); // returns false>
10. boolean equalsIgnoreCase (рядок anotherString)
Порівнює рядок з іншим рядком, ігноруючи регістр.
Boolean out= Geeks.equalsIgnoreCase(Geeks); // returns true Boolean out = Geeks.equalsIgnoreCase(geeks); // returns true>
11. int compareTo( String anotherString)
Лексикографічно порівнює два рядки.
int out = s1.compareTo(s2); // where s1 and s2 are // strings to be compared This returns difference s1-s2. If : out <0 // s1 comes before s2 out = 0 // s1 and s2 are equal. out>0 // s1 йде після s2.>
12. int compareToIgnoreCase( String anotherString)
Лексикографічно порівнює два рядки, ігноруючи регістр.
int out = s1.compareToIgnoreCase(s2); // where s1 and s2 are // strings to be compared This returns difference s1-s2. If : out <0 // s1 comes before s2 out = 0 // s1 and s2 are equal. out>0 // s1 йде після s2.>
Примітка: У цьому випадку він не враховуватиме регістр літери (буде ігнорувати, чи є вона великим чи малим).
13. Рядок toLowerCase()
Перетворює всі символи в рядку на нижній регістр.
String word1 = HeLLo; String word3 = word1.toLowerCase(); // returns hello'>
14. Рядок toUpperCase()
Перетворює всі символи в рядку у верхній регістр.
String word1 = HeLLo; String word2 = word1.toUpperCase(); // returns HELLO>
п'ятнадцять. String trim()
Повертає копію рядка, видаляючи пробіли з обох кінців. Це не впливає на пробіли посередині.
String word1 = Learn Share Learn ; String word2 = word1.trim(); // returns Learn Share Learn>
16. Заміна рядка (char oldChar, char newChar)
Повертає новий рядок, замінюючи всі входження oldChar з newChar.
String s1 = feeksforfeeks; String s2 = feeksforfeeks.replace(‘f’ ,’g’); // return geeksforgeeks>
Примітка: s1 все ще feeksforfeeks, а s2 – geeksgorgeeks
17. логічний містить (рядок):
Повертає true, якщо рядок містить містить заданий рядок
String s1='geeksforgeeks'; String s2='geeks'; s1.contains(s2) // return true>
18. Char[] toCharArray():
Перетворює цей рядок на новий масив символів.
Раджінікант
String s1='geeksforgeeks'; char []ch=s1.toCharArray(); // returns [ 'g', 'e' , 'e' , 'k' , 's' , 'f', 'o', 'r' , 'g' , 'e' , 'e' , 'k' ,'s' ]>
19. логічне значення starsWith(рядок):
Повертає true, якщо рядок починається з цього префікса.
String s1='geeksforgeeks'; String s2='geeks'; s1.startsWith(s2) // return true>
Приклад конструктора рядків і методів рядків
Нижче наведено реалізацію вищезгаданої теми:
Java // Java code to illustrate different constructors and methods // String class. import java.io.*; import java.util.*; // Driver Class class Test { // main function public static void main (String[] args) { String s= 'techcodeview.com'; // or String s= new String ('techcodeview.com'); // Returns the number of characters in the String. System.out.println('String length = ' + s.length()); // Returns the character at ith index. System.out.println('Character at 3rd position = ' + s.charAt(3)); // Return the substring from the ith index character // to end of string System.out.println('Substring ' + s.substring(3)); // Returns the substring from i to j-1 index. System.out.println('Substring = ' + s.substring(2,5)); // Concatenates string2 to the end of string1. String s1 = 'Geeks'; String s2 = 'forGeeks'; System.out.println('Concatenated string = ' + s1.concat(s2)); // Returns the index within the string // of the first occurrence of the specified string. String s4 = 'Learn Share Learn'; System.out.println('Index of Share ' + s4.indexOf('Share')); // Returns the index within the string of the // first occurrence of the specified string, // starting at the specified index. System.out.println('Index of a = ' + s4.indexOf('a',3)); // Checking equality of Strings Boolean out = 'Geeks'.equals('geeks'); System.out.println('Checking Equality ' + out); out = 'Geeks'.equals('Geeks'); System.out.println('Checking Equality ' + out); out = 'Geeks'.equalsIgnoreCase('gEeks '); System.out.println('Checking Equality ' + out); //If ASCII difference is zero then the two strings are similar int out1 = s1.compareTo(s2); System.out.println('the difference between ASCII value is='+out1); // Converting cases String word1 = 'GeeKyMe'; System.out.println('Changing to lower Case ' + word1.toLowerCase()); // Converting cases String word2 = 'GeekyME'; System.out.println('Changing to UPPER Case ' + word2.toUpperCase()); // Trimming the word String word4 = ' Learn Share Learn '; System.out.println('Trim the word ' + word4.trim()); // Replacing characters String str1 = 'feeksforfeeks'; System.out.println('Original String ' + str1); String str2 = 'feeksforfeeks'.replace('f' ,'g') ; System.out.println('Replaced f with g ->' + str2); } }> Вихід
String length = 13 Character at 3rd position = k Substring ksforGeeks Substring = eks Concatenated string = techcodeview.com Index of Share 6 Index of a = 8 Checking Equality false Checking Equality ...>
Для набору – 2 ви можете звернутися до: Клас Java.lang.String у Java | Набір 2
Цю статтю надав Рахул Агравал і наші корисні користувачі.