Java -da sətirləri idarə etməyin 5 yolu

Mündəricat:

Java -da sətirləri idarə etməyin 5 yolu
Java -da sətirləri idarə etməyin 5 yolu

Video: Java -da sətirləri idarə etməyin 5 yolu

Video: Java -da sətirləri idarə etməyin 5 yolu
Video: Samsung Telefonlarda Ekran Görüntüsü Alma 2024, Aprel
Anonim

Sətirlər simvol ardıcıllığıdır. Məsələn, "Salam!" simli 'H', 'e', 'l', 'l', 'o' və '!' simvollarından ibarət olduğu üçün. Java -da sətirlər obyektlərdir, yəni sahələri və metodları olan bir String sinfi var. Stringləri idarə etmək üçün String sinifinin metodlarından istifadə edə bilərik.

Addımlar

Metod 1 /5: String yaradın

3016567 1 1
3016567 1 1

Addım 1. String sinifinin konstruktorundan istifadə edərək bir simli yaradın

    String str = yeni String ("Salam!");

3016567 2 1
3016567 2 1

Addım 2. Bir simli birbaşa təyin edərək bir simli yaradın

3016567 3 1
3016567 3 1

Addım 3. Bir nümunə sınayın

Burada iki fərqli şəkildə bir sim yaradan bir nümunə proqramdır.

    ictimai sinif StringManipulation {public static void main (String args) {String str1 = new String ("String konstruktorla yaradıldı!"); String str2 = "Struktur konstruktor olmadan yaradıldı!"; System.out.println (str1); System.out.println (str2); }}

Metod 2 /5: String Uzunluğunu tapın

Addım 1. Bir ipin uzunluğunu tapmağın nə demək olduğunu anlayın

Bir sətrin uzunluğu, simli ehtiva edən simvolların sayıdır. Məsələn, "Salam!" Sətrinin uzunluğu 6 -dır, çünki 6 simvoldan ibarətdir.

3016567 5 1
3016567 5 1

Addım 2. çağırın

uzunluq ()

metodu String obyektində yerləşdirin və nəticəni tam ədəd dəyişənində saxlayın.

    int strLength = str.length ();

3016567 6 1
3016567 6 1

Addım 3. Gedin

Bir simli uzunluğunu tapan bir nümunə proqram.

    ictimai sinif StringManipulation {public static void main (String args) {String str = "Hello!"; int strLength = str.length (); System.out.println ("\" " + str +" / "uzunluğu" + strLength + "dır.)); }}

Metod 3 -dən 5: Bir sətri tərsinə çevirin

3016567 7
3016567 7

Addım 1. Bir simli geri çevirməyin nə demək olduğunu anlayın

Bir simli geri çevirmək, simli simvolların sıralanmasını dəyişdirmək deməkdir. Məsələn, "Salam!" Sətrinin əks tərəfi "! olleH" dir. Java -da bir sətri geri çevirməyin bir çox yolu var.

3016567 8 1
3016567 8 1

Addım 2. StringBuffer sinifinin tərs metodundan istifadə edin

Parametr olaraq geri çevirmək istədiyiniz sətri alan StringBuffer obyekti yaradın. StringBuffer -in reverse () metodundan istifadə edin və sonra toString () metodundan istifadə edərək yeni tərsinə çevrilmiş sətri alın.

    ictimai sinif StringManipulation {public static void main (String args) {String str = "Hello!"; StringBuffer tamponu = yeni StringBuffer (str); String reversedStr = buffer.reverse (). ToString (); System.out.println ("\" " + str +" / "sətrinin tərsi \" " + reversedStr +" / "."); }}

3016567 9 1
3016567 9 1

Addım 3. Bu simvolları hər bir təkrarlama zamanı StringBuffer -ə əlavə edərək, simli simvolları tərsinə təkrarlayın

Parametr olaraq geri çevirmək istədiyiniz sətrin uzunluğu ilə yeni bir StringBuffer obyekti yaradın. Sonra simli sonuncu simvoldan başlayaraq sətrin ilk simvolu ilə bitən simli təkrarlamaq üçün for döngəsindən istifadə edin. Hər təkrarlama zamanı həmin indeksdəki xarakteri StringBuffer -ə əlavə edin. ToString () metodundan istifadə edərək yeni tərsinə çevrilmiş sətri əldə edin.

    ictimai sinif StringManipulation {public static void main (String args) {String str = "Hello!"; StringBuffer tamponu = yeni 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 +" / "sətrinin tərsi \" " + reversedStr +" / "."); }}

3016567 10 1
3016567 10 1

Addım 4. Sətri geri çevirmək üçün rekursiv funksiya yazın

Rekursiv funksiyada, əsas hal / şərt, sətrin sıfır olması və ya sətrin uzunluğu heç kimdən az və ya bərabər olmasıdır. Əks təqdirdə, reverse () metodu, birinci simini çıxarmaqla yenidən çağırılır və ilk xarakter sonunda bağlanır. Beləliklə, "Salam!" Sətrindən keçsək, bundan sonra ilk tərs () zəngində "ello!" Parametri olacaq.

    ictimai sinif StringManipulation {public static void main (String args) {String str = "Hello!"; String reversedStr = tərs (str); System.out.println ("\" " + str +" / "sətrinin tərsi \" " + reversedStr +" / "."); } özəl statik String tərs (String str) {if (str == null || str.length () <= 1) return str; tərsinə dön (str.substring (1)) + str.charAt (0); }}

3016567 11 1
3016567 11 1

Addım 5. Sətri bir sıra simvollara çevirin və sonra birinci və sonuncu, ikinci və ikincisini sona dəyişin və s

personajlar. Əvvəlcə sətirdəki toCharArray () metodundan istifadə edərək simli bir sıra simvollara çevirin. Arraydakı minus bir uzunluğuna bərabər olan sonuncu simvolun indeksini alın. Sonra i -ni dəyişdirərək dizi boyunca təkrarlayınci xarakter və indexOfLastChar - ici hər təkrarlamada xarakter. Nəhayət, xarakter dizisini yenidən bir sətirə çevirin.

    ictimai sinif StringManipulation {public static void main (String args) {String str = "Hello!"; 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; } String reversedStr = yeni String (charArray); System.out.println ("\" " + str +" / "sətrinin tərsi \" " + reversedStr +" / "."); }}

3016567 12 1
3016567 12 1

Addım 6. Çıxışınızı nəzərdən keçirin

Bu üsulların hər hansı birinin nəticəsi, sətrin geri çevrilməsidir.

Metod 4 /5: Ağ Məkanı Stringlə kəsin

3016567 13
3016567 13

Addım 1. Ağ səthi bir sətirdə kəsməyin nə demək olduğunu anlayın

Java -da bir simli kəsmək, sətirdəki aparıcı və arxa boşluqları silmək deməkdir. Məsələn, siminiz varsa"

Salam, dünya!

"və əvvəlində və sonunda ağ boşluq olmadan" Salam, dünya! "yazmasını istəsəniz, simli kəsə bilərsiniz. String sinfi, simli bir nüsxəsini qaytaran trim () metodunu təqdim edir. aparıcı və arxa boşluq silinir və ya heç bir aparıcı və ya arxa boşluq yoxdursa orijinal simli.

3016567 14 1
3016567 14 1

Addım 2. Ağ boşluğu kəsmək üçün String obyektindəki String sinifinin trim () metodundan istifadə edin

Diqqət yetirin ki, sim boş olarsa, trim () metodu istisna yaradır. Trim () metodu, orijinal sətrin məzmununu dəyişməyəcək, çünki Java -dakı sətirlər dəyişməzdir, yəni bir sətrin vəziyyəti yaradıldıqdan sonra dəyişdirilə bilməz. Əksinə, trim () metodu, boşluqları kəsilmiş yeni bir simli qaytaracaq.

    String trimmedStr = str.trim ();

Addım 3. Bir nümunə sınayın

Bir sətrin ağ boşluğunu kəsən bir nümunə proqram:

    ictimai sinif StringManipulation {public static void main (String args) {String str = "Hello!"; String trimmedStr = str.trim (); System.out.println ("Orijinal String \" " + str +" / "."); System.out.println ("Kəsilmiş String \" " + trimmedStr +" / "."); }}

Metod 5 /5: Bir String bölün

3016567 16
3016567 16

Addım 1. Bir ipi bölmək nə demək olduğunu anlayın

Java -da bir simli bölmək, bir sətri müəyyən bir ayırıcı ilə bir sıra alt sətirlərə bölmək deməkdir. Məsələn, "qırmızı, mavi, yaşıl, sarı, çəhrayı" sətrini ayırıcı olaraq vergüllə bölsəm, {"qırmızı", "mavi", "yaşıl", "sarı", "çəhrayı" serialını alardım "}. Bir simli bölmək üçün üç fərqli yol var.

3016567 17 1
3016567 17 1

Addım 2. İstifadə edin

StringTokenizer

simli tokenize etmək.

İdxal et

java.util. StringTokenizer

. Sonra yeni bir a nümunəsi yaradın

StringTokenizer

tokenize simli və parametr kimi ayırıcı ilə. Ayırıcıyı bir parametr olaraq girməsəniz, ayırıcı avtomatik olaraq ağ boşluğu təyin edəcək. Sizə sahib olduqdan sonra

StringTokenizer

istifadə edə bilərsiniz

nextToken ()

hər bir token əldə etmək üsulu.

    java.util. Arrays idxal edin; java.util. StringTokenizer idxal edin; ictimai sinif StringManipulation {public static void main (String args) {String str = "red, green, blue, yellow, pink"; StringTokenizer tokenizer = yeni StringTokenizer (str, ","); int numberOfTokens = tokenizer.countTokens (); String splitArr = yeni String [numberOfTokens]; for (int i = 0; i <numberOfTokens; i ++) {splitArr = tokenizer.nextToken (); } System.out.println ("\ nOriginal String:" + str); System.out.println ("Bölünmüş Array:" + Arrays.toString (splitArr) + "\ n"); }}

  • Java 1.4 -dən əvvəl

    StringTokenizer

    sinif Java -da sətirləri bölmək üçün istifadə olunurdu. Amma indi, istifadə

    StringTokenizer

    istifadəsi tövsiyə edilmir

    bölmək ()

    -də metod

    Simli

    sinif və ya istifadə

    java.util.regex

  • paketi təşviq olunur.
3016567 18 1
3016567 18 1

Addım 3.. İstifadə edin

Simli

sinifin

bölmək ()

üsul

The

bölmək ()

metod, ayırıcıyı bir param olaraq götürəcək və simvollarla eyni olan bir sıra alt sətirləri qaytaracaq.

StringTokenizer

    java.util. Arrays idxal edin; ictimai sinif StringManipulation {public static void main (String args) {String str = "red, green, blue, yellow, pink"; String splitArr = str.split (","); System.out.println ("\ nOriginal String:" + str); System.out.println ("Bölünmüş Array:" + Arrays.toString (splitArr) + "\ n"); }}

3016567 19 1
3016567 19 1

Addım 4. Sətri bölmək üçün normal ifadələrdən istifadə edin

İdxal et

java.util.regex. Pattern

. İstifadə edin

tərtib etmək ()

metodu

Nümunə

ayırıcı təyin etmək və sonra vermək üçün sinif

bölmək ()

Bölmək istədiyiniz simli metod. The

Nümunə

bir sıra alt sətirləri qaytaracaq.

    java.util. Arrays idxal edin; java.util.regex. Pattern idxal edin; ictimai sinif StringManipulation {public static void main (String args) {String str = "red, green, blue, yellow, pink"; String splitArr = Pattern.compile (",").split (str); System.out.println ("\ nOriginal String:" + str); System.out.println ("Bölünmüş Array:" + Arrays.toString (splitArr) + "\ n"); }}

3016567 20 1
3016567 20 1

Addım 5. Çıxışınızı nəzərdən keçirin

Sətirlərin bölünməsi üçün bu metodlardan hər hansı birinin nəticəsi budur.

Tövsiyə: