5 Cara Memanipulasi Rentetan di Jawa

Isi kandungan:

5 Cara Memanipulasi Rentetan di Jawa
5 Cara Memanipulasi Rentetan di Jawa

Video: 5 Cara Memanipulasi Rentetan di Jawa

Video: 5 Cara Memanipulasi Rentetan di Jawa
Video: Belajar Microsoft Access untuk Pemula 2024, April
Anonim

Rentetan adalah urutan watak. Contohnya, "Hello!" adalah tali kerana terdiri daripada watak 'H', 'e', 'l', 'l', 'o', dan '!'. Di Jawa, string adalah objek, yang berarti ada kelas String yang mempunyai bidang dan kaedah. Kita boleh menggunakan kaedah kelas String untuk memanipulasi rentetan.

Langkah-langkah

Kaedah 1 dari 5: Buat Rentetan

3016567 1 1
3016567 1 1

Langkah 1. Buat rentetan menggunakan konstruktor kelas String

    String str = String baru ("Hello!");

3016567 2 1
3016567 2 1

Langkah 2. Buat rentetan dengan memberikan string secara langsung

3016567 3 1
3016567 3 1

Langkah 3. Cuba contoh

Berikut adalah contoh program yang membuat rentetan dengan dua cara yang berbeza.

    kelas awam StringManipulation {public static void main (String args) {String str1 = String baru ("String dibuat dengan konstruktor!"); String str2 = "String dibuat tanpa konstruktor!"; System.out.println (str1); System.out.println (str2); }}

Kaedah 2 dari 5: Cari Panjang Rentetan

Langkah 1. Fahami apa maksud mencari panjang tali

Panjang rentetan adalah bilangan aksara yang mengandungi rentetan. Contohnya, panjang tali "Hello!" adalah 6 kerana mempunyai 6 watak.

3016567 5 1
3016567 5 1

Langkah 2. Memohon

panjang ()

kaedah pada objek String dan simpan hasilnya dalam pemboleh ubah integer.

    int strLength = str.length ();

3016567 6 1
3016567 6 1

Langkah 3. Cubalah

Berikut adalah contoh program yang menemui panjang tali.

    kelas awam StringManipulation {public static void main (String args) {String str = "Hello!"; int strLength = str.length (); System.out.println ("Panjang \" "+ str +" / "adalah" + strLength + "."); }}

Kaedah 3 dari 5: Membalikkan Rentetan

3016567 7
3016567 7

Langkah 1. Fahami apa maksud membalikkan rentetan

Membalikkan rentetan bermaksud menukar susunan watak dalam rentetan. Contohnya, rentetan terbalik "Hello!" adalah "! olleH". Terdapat banyak cara untuk membalikkan rentetan di Java.

3016567 8 1
3016567 8 1

Langkah 2. Gunakan kaedah terbalik dari kelas StringBuffer

Buat objek StringBuffer yang mengambil rentetan yang ingin dibalikkan sebagai parameter. Gunakan kaedah StringBuffer terbalik () dan kemudian ambil rentetan yang baru terbalik dengan menggunakan kaedah toString ().

    kelas awam StringManipulation {public static void main (String args) {String str = "Hello!"; StringBuffer buffer = StringBuffer baru (str); String reversedStr = buffer.reverse (). ToString (); System.out.println ("Bahagian belakang rentetan \" "+ str +" / "adalah \" "+ terbalikStr +" / "."); }}

3016567 9 1
3016567 9 1

Langkah 3. Ulangi watak-watak dalam rentetan secara terbalik, tambahkan watak-watak ini ke StringBuffer pada setiap lelaran

Buat objek StringBuffer baru yang diinisialisasi dengan panjang rentetan yang ingin dibalikkan sebagai parameter. Kemudian gunakan loop for untuk mengulangi rentetan, bermula dari watak terakhir dalam rentetan dan berakhir pada watak pertama dalam rentetan. Pada setiap lelaran, tambahkan watak pada indeks itu ke StringBuffer. Dapatkan semula rentetan yang baru terbalik dengan menggunakan kaedah toString ().

    kelas awam StringManipulation {public static void main (String args) {String str = "Hello!"; StringBuffer buffer = StringBuffer baru (str.length ()); untuk (int i = str.length () - 1; i> = 0; i--) {buffer.append (str.charAt (i)); } String reversedStr = buffer.toString (); System.out.println ("Bahagian belakang rentetan \" "+ str +" / "adalah \" "+ terbalikStr +" / "."); }}

3016567 10 1
3016567 10 1

Langkah 4. Tulis fungsi rekursif untuk membalikkan rentetan

Dalam fungsi rekursif, kes dasar / keadaan adalah jika tali itu kosong atau jika panjang tali kurang dari atau sama dengan tidak ada. Jika tidak, kaedah terbalik () dipanggil lagi dengan rentetan tolak watak pertama, dan watak pertama ditangani pada akhir. Oleh itu, jika kita menerima rentetan "Hello!", Panggilan terbalik () pertama selepas itu akan mempunyai parameter "ello!".

    kelas awam StringManipulation {public static void main (String args) {String str = "Hello!"; String reversedStr = terbalik (str); System.out.println ("Bahagian belakang rentetan \" "+ str +" / "adalah \" "+ terbalikStr +" / "."); } String statik terbalik peribadi (String str) {if (str == null || str.length () <= 1) return str; kembali terbalik (str.substring (1)) + str.charAt (0); }}

3016567 11 1
3016567 11 1

Langkah 5. Tukarkan rentetan ke sebilangan watak dan kemudian tukar yang pertama dan terakhir, kedua dan kedua hingga terakhir, dll

watak. Mula-mula menukar rentetan ke array watak dengan menggunakan kaedah toCharArray () pada rentetan. Dapatkan indeks watak terakhir dalam array, yang sama dengan panjang array tolak satu. Kemudian berulang melalui array, menukar iika watak dan indeksOfLastChar - iika watak pada setiap lelaran. Akhirnya, ubah semula array watak menjadi rentetan.

    kelas awam StringManipulation {public static void main (String args) {String str = "Hello!"; char charArray = str.toCharArray (); int indexOfLastChar = charArray.length - 1; untuk (int i = 0; i <charArray.length / 2; i ++) {char temp = charArray ; charArray = charArray [indexOfLastChar - i]; charArray [indexOfLastChar - i] = temp; } String reversedStr = String baru (charArray); System.out.println ("Bahagian belakang rentetan \" "+ str +" / "adalah \" "+ terbalikStr +" / "."); }}

3016567 12 1
3016567 12 1

Langkah 6. Kaji output anda

Berikut adalah hasil yang dihasilkan dari salah satu kaedah ini untuk pembalikan rentetan.

Kaedah 4 dari 5: Potong Ruang Putih dalam Rentetan

3016567 13
3016567 13

Langkah 1. Fahami apa yang dimaksudkan untuk memotong ruang putih dalam tali

Memangkas tali di Java bermaksud menghilangkan ruang putih yang terdahulu dan yang tertinggal di tali. Contohnya, jika anda mempunyai rentetan"

Hai dunia!

"dan anda ingin mengatakannya" Hello, world! "tanpa ruang kosong pada awal dan akhirnya, anda boleh memotong rentetan. Kelas String menyediakan kaedah untuk memangkas () yang mengembalikan salinan rentetan dengan ruang putih depan dan belakang ditanggalkan atau tali asal jika tidak mempunyai ruang putih depan atau belakang.

3016567 14 1
3016567 14 1

Langkah 2. Gunakan kaedah trim () kelas String pada objek String untuk memangkas ruang putih

Perhatikan bahawa kaedah trim () akan membuang pengecualian jika rentetan nol. Kaedah trim () tidak akan mengubah kandungan rentetan asal kerana rentetan di Java tidak dapat diubah, yang bermaksud keadaan rentetan tidak dapat diubah setelah dibuat. Sebaliknya, kaedah trim () akan mengembalikan rentetan baru yang ruang kosongnya dipangkas.

    String trimmedStr = str.trim ();

Langkah 3. Cuba contoh

Berikut adalah contoh program yang mengurangkan ruang putih rentetan:

    kelas awam StringManipulation {public static void main (String args) {String str = "Hello!"; String trimmedStr = str.trim (); System.out.println ("String Asal adalah \" "+ str +" / "."); System.out.println ("Trimmed String is \" "+ trimmedStr +" / "."); }}

Kaedah 5 dari 5: Pisahkan Rentetan

3016567 16
3016567 16

Langkah 1. Fahami apa maksud memisahkan tali

Memisahkan rentetan di Java bermaksud memisahkan rentetan oleh pembatas tertentu menjadi susunan substring. Contohnya, jika saya membahagikan rentetan "merah, biru, hijau, kuning, merah jambu" dengan koma sebagai pembatas, saya akan mendapat susunan {"merah", "biru", "hijau", "kuning", "merah jambu "}. Berikut adalah tiga cara berbeza untuk memisahkan rentetan.

3016567 17 1
3016567 17 1

Langkah 2. Gunakan

StringTokenizer

untuk menandakan rentetan.

Import

java.util. StringTokenizer

. Kemudian buat contoh baru a

StringTokenizer

dengan rentetan untuk tokenize dan pembatas sebagai parameter. Sekiranya anda tidak memasukkan pembatas sebagai parameter, pembatas secara automatik akan menjadi ruang kosong. Selepas anda mempunyai

StringTokenizer

anda boleh menggunakan

NextToken ()

kaedah untuk mendapatkan setiap token.

    import java.util. Arrays; import java.util. StringTokenizer; kelas awam StringManipulation {public static void main (String args) {String str = "merah, hijau, biru, kuning, merah jambu"; StringTokenizer tokenizer = StringTokenizer baru (str, ","); int numberOfTokens = tokenizer.countTokens (); String splitArr = String baru [numberOfTokens]; untuk (int i = 0; i <numberOfTokens; i ++) {splitArr = tokenizer.nextToken (); } System.out.println ("\ nOrang Asal:" + str); System.out.println ("Split Array:" + Arrays.toString (splitArr) + "\ n"); }}

  • Sebelum Java 1.4, the

    StringTokenizer

    kelas digunakan untuk memisahkan tali di Jawa. Tetapi sekarang, penggunaan

    StringTokenizer

    tidak digalakkan dan penggunaan

    berpecah ()

    kaedah dalam

    Tali

    kelas atau penggunaan

    java.util.regex

  • pakej digalakkan.
3016567 18 1
3016567 18 1

Langkah 3. Gunakan

Tali

kelas

berpecah ()

kaedah.

The

berpecah ()

kaedah akan menggunakan pembatas sebagai param dan mengembalikan array sub-string yang sama dengan token dari

StringTokenizer

    import java.util. Arrays; kelas awam StringManipulation {public static void main (String args) {String str = "merah, hijau, biru, kuning, merah jambu"; Rentetan splitArr = str.split (","); System.out.println ("\ nOrang Asal:" + str); System.out.println ("Split Array:" + Arrays.toString (splitArr) + "\ n"); }}

3016567 19 1
3016567 19 1

Langkah 4. Gunakan ungkapan biasa untuk memisahkan rentetan

Import

java.util.regex. Pattern

. Menggunakan

menyusun ()

kaedah

Corak

kelas untuk menetapkan pembatas dan kemudian berikan

berpecah ()

kaedah rentetan yang anda mahu bahagikan. The

Corak

akan mengembalikan pelbagai substring.

    import java.util. Arrays; import java.util.regex. Pattern; kelas awam StringManipulation {public static void main (String args) {String str = "merah, hijau, biru, kuning, merah jambu"; Rentetan splitArr = Pattern.compile (",").split (str); System.out.println ("\ nOrang Asal:" + str); System.out.println ("Split Array:" + Arrays.toString (splitArr) + "\ n"); }}

3016567 20 1
3016567 20 1

Langkah 5. Kaji output anda

Berikut adalah output yang dihasilkan dari salah satu kaedah ini untuk membelah rentetan.

Disyorkan: