5 начина за манипулиране на низове в Java

Съдържание:

5 начина за манипулиране на низове в Java
5 начина за манипулиране на низове в Java

Видео: 5 начина за манипулиране на низове в Java

Видео: 5 начина за манипулиране на низове в Java
Видео: Windows Security: For Admins and Technical Support 2024, Април
Anonim

Низовете са последователности от знаци. Например „Здравей!“е низ, защото се състои от знаците 'H', 'e', 'l', 'l', 'o' и '!'. В Java низовете са обекти, което означава, че има клас String, който има полета и методи. Можем да използваме методите на класа String за манипулиране на низове.

Стъпки

Метод 1 от 5: Създайте низ

3016567 1 1
3016567 1 1

Стъпка 1. Създайте низ, като използвате конструктора на класа String

    String str = new String ("Здравейте!");

3016567 2 1
3016567 2 1

Стъпка 2. Създайте низ чрез директно задаване на низ

3016567 3 1
3016567 3 1

Стъпка 3. Опитайте пример

Ето примерна програма, която създава низ по два различни начина.

    публичен клас StringManipulation {public static void main (String args) {String str1 = new String ("Низ, създаден с конструктор!"); String str2 = "Низ, създаден без конструктор!"; System.out.println (str1); System.out.println (str2); }}

Метод 2 от 5: Намерете дължината на низ

Стъпка 1. Разберете какво означава да намерите дължината на низ

Дължината на низ е броят на знаците, които низът съдържа. Например дължината на низ "Здравей!" е 6, защото има 6 знака.

3016567 5 1
3016567 5 1

Стъпка 2. Извикайте

дължина ()

метод на обекта String и съхранява резултата в целочислена променлива.

    int strLength = str.length ();

3016567 6 1
3016567 6 1

Стъпка 3. Опитайте

Ето примерна програма, която намира дължината на низ.

    публичен клас StringManipulation {public static void main (String args) {String str = "Здравейте!"; int strLength = str.length (); System.out.println ("Дължината на \" " + str +" / "е" + strLength + "."); }}

Метод 3 от 5: Обръщане на низ

3016567 7
3016567 7

Стъпка 1. Разберете какво означава да обърнете низ

Обръщането на низ означава да превключите подреждането на знаците в низ. Например обратната страна на низа "Здравей!" е "! olleH". Има много начини да обърнете низ в Java.

3016567 8 1
3016567 8 1

Стъпка 2. Използвайте обратния метод на класа StringBuffer

Създайте обект StringBuffer, който приема низа, който искате да обърнете като параметър. Използвайте метода reverse () на StringBuffer и след това извлечете ново обърнатия низ чрез метода toString ().

    публичен клас StringManipulation {public static void main (String args) {String str = "Здравейте!"; StringBuffer буфер = нов StringBuffer (str); Низ обърнатStr = buffer.reverse (). ToString (); System.out.println ("Обратното на низ \" " + str +" / "е \" " + reversedStr +" / "."); }}

3016567 9 1
3016567 9 1

Стъпка 3. Повтаряйте символите в низ в обратен ред, като добавяте тези символи към StringBuffer при всяка итерация

Създайте нов StringBuffer обект, инициализиран с дължината на низ, който искате да обърнете като параметър. След това използвайте цикъл for, за да повторите низа, започвайки от последния знак в низ и завършвайки с първия знак в низ. При всяка итерация добавяйте символа от този индекс към StringBuffer. Извлечете ново обърнатия низ, като използвате метода toString ().

    публичен клас StringManipulation {public static void main (String args) {String str = "Здравейте!"; StringBuffer буфер = нов StringBuffer (str.length ()); for (int i = str.length ()-1; i> = 0; i--) {buffer.append (str.charAt (i)); } String reversedStr = buffer.toString (); System.out.println ("Обратното на низ \" " + str +" / "е \" " + reversedStr +" / "."); }}

3016567 10 1
3016567 10 1

Стъпка 4. Напишете рекурсивна функция, за да обърнете низ

В рекурсивната функция основният случай / условие е, ако низът е нулев или ако дължината на низ е по -малка или равна на none. В противен случай методът reverse () се извиква отново с низ минус първия знак, а първият знак се поставя в края. Така че, ако преминем в низа "Здравей!", Първото извикване обратно () след това ще има параметъра "ello!".

    публичен клас StringManipulation {public static void main (String args) {String str = "Здравейте!"; Низ обърнатStr = обратно (str); System.out.println ("Обратното на низ \" " + str +" / "е \" " + reversedStr +" / "."); } частна статична низа обратно (String str) {if (str == null || str.length () <= 1) връщане на str; връщане обратно (str.substring (1)) + str.charAt (0); }}

3016567 11 1
3016567 11 1

Стъпка 5. Конвертирайте низ в масив от знаци и след това разменете първото и последното, второто и второто до последно и т.н

персонажи. Първо преобразувайте низ в масив от знаци, като използвате метода toCharArray () на низ. Вземете индекса на последния знак в масива, който е равен на дължината на масива минус едно. След това повторете през масива, като размените ith символ и индексътOfLastChar - ith символ при всяка итерация. Накрая преобразувайте символния масив обратно в низ.

    публичен клас StringManipulation {public static void main (String args) {String str = "Здравейте!"; char charArray = str.toCharArray (); int indexOfLastChar = charArray.length - 1; for (int i = 0; i <charArray.length/2; i ++) {char temp = charArray ; charArray = charArray [indexOfLastChar - i]; charArray [indexOfLastChar - i] = temp; } Низ обърнатStr = нов низ (charArray); System.out.println ("Обратното на низ \" " + str +" / "е \" " + reversedStr +" / "."); }}

3016567 12 1
3016567 12 1

Стъпка 6. Прегледайте резултата си

Ето изхода, който е резултат от всеки един от тези методи за обръщане на низ.

Метод 4 от 5: Отрежете бялото пространство в низ

3016567 13
3016567 13

Стъпка 1. Разберете какво означава да отрежете бяло пространство в низ

Подрязването на низ в Java означава премахване на началното и последното бяло пространство в низ. Например, ако имате низ"

Здравей свят!

"и искате да го кажете" Здравей, свят! "без празното пространство в началото и в края, можете да отрежете низа. Класът String предоставя метод за trim (), който връща копие на низ с първо и последно бяло пространство е премахнато или оригиналният низ, ако няма начално или последно бяло пространство.

3016567 14 1
3016567 14 1

Стъпка 2. Използвайте trim () метода на класа String върху String обект, за да отрежете бялото пространство

Обърнете внимание, че методът trim () ще хвърли изключение, ако низът е нулев. Методът trim () няма да промени съдържанието на оригиналния низ, тъй като низовете в Java са неизменни, което означава, че състоянието на низ не може да бъде променено след създаването му. По -скоро методът trim () ще върне нов низ, чието бяло пространство е отрязано.

    Низ trimmedStr = str.trim ();

Стъпка 3. Опитайте пример

Ето примерна програма, която изрязва бялото пространство на низ:

    публичен клас StringManipulation {public static void main (String args) {String str = "Здравейте!"; Низ trimmedStr = str.trim (); System.out.println ("Оригиналният низ е \" " + str +" / "."); System.out.println ("Trimmed String is \" " + trimmedStr +" / "."); }}

Метод 5 от 5: Разделете низ

3016567 16
3016567 16

Стъпка 1. Разберете какво означава разделяне на низ

Разделянето на низ в Java означава разделяне на низ от определен разделител на масив от поднизове. Например, ако разделя низ "червено, синьо, зелено, жълто, розово" със запетая като разделител, щях да получа масива {"червен", "син", "зелен", "жълт", "розов" "}. Ето три различни начина за разделяне на низ.

3016567 17 1
3016567 17 1

Стъпка 2. Използвайте

StringTokenizer

за токенизиране на низ.

Внос

java.util. StringTokenizer

. След това създайте нов екземпляр на

StringTokenizer

с низ за токенизиране и разделител като параметри. Ако не въведете разделителя като параметър, разделителят автоматично ще бъде по подразбиране бяло пространство. След като имате

StringTokenizer

можете да използвате

nextToken ()

метод за получаване на всеки знак.

    импортиране на java.util. Arrays; импортиране на java.util. StringTokenizer; публичен клас StringManipulation {public static void main (String args) {String str = "червено, зелено, синьо, жълто, розово"; StringTokenizer tokenizer = нов StringTokenizer (str, ","); int numberOfTokens = tokenizer.countTokens (); String splitArr = нов String [numberOfTokens]; for (int i = 0; i <numberOfTokens; i ++) {splitArr = tokenizer.nextToken (); } System.out.println ("\ nОригинален низ:" + str); System.out.println ("Разделен масив:" + Arrays.toString (splitArr) + "\ n"); }}

  • Преди Java 1.4,

    StringTokenizer

    class се използва за разделяне на низове в Java. Но сега използването на

    StringTokenizer

    се обезкуражава и използването на

    split ()

    метод в

    Низ

    клас или използването на

    java.util.regex

  • пакетът се насърчава.
3016567 18 1
3016567 18 1

Стъпка 3. Използвайте

Низ

класа

split ()

метод.

The

split ()

метод ще вземе разделителя като параметър и ще върне масив от поднизове, които са същите като символите от

StringTokenizer

    импортиране на java.util. Arrays; публичен клас StringManipulation {public static void main (String args) {String str = "червено, зелено, синьо, жълто, розово"; Низ splitArr = str.split (","); System.out.println ("\ nОригинален низ:" + str); System.out.println ("Разделен масив:" + Arrays.toString (splitArr) + "\ n"); }}

3016567 19 1
3016567 19 1

Стъпка 4. Използвайте регулярни изрази, за да разделите низа

Внос

java.util.regex. Pattern

. Използвай

компилиране ()

метод на

модел

class, за да зададете разделителя и след това дайте

split ()

метод низът, който искате да разделите. The

модел

ще върне масив от поднизове.

    импортиране на java.util. Arrays; импортиране на java.util.regex. Pattern; публичен клас StringManipulation {public static void main (String args) {String str = "червено, зелено, синьо, жълто, розово"; String splitArr = Pattern.compile (",").split (str); System.out.println ("\ nОригинален низ:" + str); System.out.println ("Разделен масив:" + Arrays.toString (splitArr) + "\ n"); }}

3016567 20 1
3016567 20 1

Стъпка 5. Прегледайте резултата си

Ето изхода, който е резултат от всеки един от тези методи за разделяне на низове.

Препоръчано: