Dalam tutorial ini kita akan belajar bagaimana untuk bekerja dengan rentetan dalam Java. Rentetan, yang digunakan secara meluas dalam pengaturcaraan, ialah urutan aksara. Dalam bahasa pengaturcaraan Java, rentetan adalah objek. Platform Java menyediakan kelas
String
untuk mencipta dan memanipulasi rentetan.
Mencipta Rentetan
Cara paling mudah untuk membuat rentetan kelihatan seperti ini:String greeting = "Hello world!";
Dalam kes ini, "Hello World!" ialah rentetan literal (iaitu pemalar) yang terdiri daripada urutan aksara yang disertakan dalam tanda petikan. Setiap kali pengkompil menemui rentetan literal, ia mencipta objek jenis String
dengan nilai, dalam kes kami, "Hello World!". Seperti mana-mana objek lain, rentetan boleh dibuat menggunakan kata kunci new
. Kelas String
mempunyai tiga pembina yang membolehkan anda mencipta objek menggunakan sumber yang berbeza, seperti tatasusunan aksara .
char[] helloArray = {'h', 'e', 'l', 'l', 'o', '.'};
String helloString = new String(helloArray);
System.out.println(helloString);
Baris terakhir contoh akan mencetak helo ke skrin . Kelas String
tidak boleh diubah, jadi sebaik sahaja kita mencipta objek, kita tidak boleh mengubahnya. Beberapa kaedah yang akan kita lihat di bawah boleh membetulkannya. Kerana String
tidak berubah, kaedah ini mencipta dan mengembalikan rentetan baharu yang mengandungi hasil operasi.
Panjang rentetan Java
Kaedah untuk mendapatkan maklumat tentang rentetan dipanggil kaedah akses. Salah satu kaedah inilength()
. Ia mengembalikan bilangan aksara dalam rentetan. Dalam contoh berikut len
ia akan menjadi 17:
String palindrome = "Dont saw I saw Tod";
int len = palindrome.length();
Pembolehubah palindrome
mengandungi palindrom, i.e. perkataan atau ayat yang sama membaca kedua-dua cara. Mari kita tulis program kecil yang akan membalikkan palindrom. Kami akan menggunakan kaedah charAt(i)
, yang mengembalikan aksara ke-i rentetan, bermula dengan 0
.
public class StringDemo {
public static void main(String[] args) {
String palindrome = "Dot saw I was Tod";
int len = palindrome.length();
char[] tempCharArray = new char[len];
char[] charArray = new char[len];
//создадим из строки
// массив символов
for (int i = 0; i < len; i++) {
tempCharArray[i] =
palindrome.charAt(i);
}
// перевернем массив символов
for (int j = 0; j < len; j++) {
charArray[j] =
tempCharArray[len - 1 - j];
}
String reversePalindrome =
new String(charArray);
System.out.println(reversePalindrome);
}
}
Program akan mencetak
doT saw I was toD
Untuk membalikkan rentetan, kami mula-mula mencipta tatasusunan aksara daripada rentetan (gelung pertama), kemudian mencipta tatasusunan baharu yang mana kami menulis tatasusunan pertama terbalik, kemudian mencipta rentetan baharu. Kelas String
mengandungi kaedah getChars()
yang mengembalikan tatasusunan aksara, jadi gelung pertama boleh digantikan dengan baris:
palindrome.getChars(0, len, tempCharArray, 0);
Penggabungan rentetan
KelasString
melaksanakan kaedah untuk menggabungkan dua rentetan:
string1.concat(string2);
Kod ini akan mengembalikan rentetan baharu yang mengandungi string1
dan dilampirkan padanya string2
. Anda juga boleh menggunakan kaedah ini dengan literal rentetan:
"My name is ".concat("Rumplestiltskin");
Selalunya, rentetan disambung menggunakan +
pengendali " ", contoh:
"Hello," + " world" + "!"
Hasilnya akan menjadi rentetan " Helo, dunia!" " Operator " +
" digunakan secara meluas untuk memaparkan maklumat, contohnya:
String string1 = "saw I was ";
System.out.println("Dot " + string1 + "Tod");
Kod akan mengeluarkan " Dot saw I was Tod ". Penggabungan sedemikian boleh digunakan bersama dengan mana-mana objek lain. Untuk objek yang bukan rentetan, kaedah akan dipanggil toString()
, yang menukarkannya kepada rentetan. Menetapkan format output rentetan Kami telah melihat kaedah printf()
apabila format()
kami memformat output nombor. Kelas String
mempunyai kaedah yang sama yang mengembalikan rentetan. Menggunakan kaedah statik format()
adalah mungkin untuk mencipta templat stok yang boleh digunakan semula, contohnya:
System.out.printf ("The value of the float " +
"variable is %f, while " +
"the value of the " +
"integer variable is %d, "
"and the string is %s",
floatVar, intVar, stringVar);
anda boleh menggunakan kod ini:
String fs;
fs = String.format("The value of the float " +
"variable is %f, while " +
"the value of the " +
"integer variable is %d, " +
" and the string is %s",
froatVar, intVar, stringVar);
System.out.println(fs);
Itu sahaja! :) Pautan ke sumber: Strings in Java
GO TO FULL VERSION