Ada dua jenis operasi string di Java: kelas string dan kelas StringBuffer (kelas pemrosesan string buffer).
Mari kita bicara secara singkat tentang perbedaan antara keduanya.
Baik kelas string dan kelas StringBuffer menyediakan metode yang sesuai untuk mengimplementasikan operasi string, tetapi keduanya sedikit berbeda.
(1) Kelas String
Setelah kelas ini menghasilkan string, objeknya tidak dapat diubah. Konten dan panjang kelas string diperbaiki. Jika program perlu mendapatkan informasi string, perlu untuk menghubungi berbagai metode operasi string yang disediakan oleh sistem. Meskipun operasi dapat diterapkan pada string melalui berbagai metode sistem, ini tidak mengubah instance objek itu sendiri, tetapi menghasilkan instance baru. Sistem mengalokasikan memori untuk objek kelas string, yang dialokasikan sesuai dengan jumlah aktual karakter yang terkandung dalam objek.
(2) Kelas StringBuffer
Saya memeriksa kata buffer, yang berarti buffering, dan kelas ini harus memiliki fungsi buffering. Kelas ini menangani string variabel. Jika Anda ingin memodifikasi string kelas StringBuffer, Anda tidak perlu membuat objek string baru, tetapi secara langsung mengoperasikan string asli. Berbagai metode operasi string dari kelas ini berbeda dari yang disediakan oleh kelas string. Ketika sistem mengalokasikan memori untuk kelas StringBuffer, selain ruang yang ditempati oleh karakter saat ini, itu juga menyediakan tambahan 16 buffer karakter. Setiap objek StringBuffer memiliki kapasitas buffer tertentu. Ketika ukuran string tidak melebihi kapasitas, kapasitas baru tidak akan dialokasikan. Ketika ukuran string melebihi kapasitas, kapasitas akan meningkat secara otomatis.
Berikut adalah beberapa contoh spesifik
Koneksi string
Ada dua metode untuk kelas string
Tipe pertama ("+")
kelas publik str {public static void main (string [] args) {string str1 = "Tambahkan efek khusus!"; String str2 = "Duang ~~"; System.out.println (str1+""+str2); }}Tipe kedua ("concat")
kelas publik str {public static void main (string [] args) {string str1 = "Tambahkan efek khusus!"; String str2 = "Duang ~~"; System.out.println (str1.concat (str2)); }}Metode Kelas StringBuffer
Public Class Str {public static void main (string [] args) {// Bangun objek yang buffer string SB StringBuffer SB = New StringBuffer ("Tambahkan efek khusus!"); // Gunakan metode append untuk menambahkan string baru SB.Append ("Duang ~~"); System.out.println (SB); }}Hasil output akhir adalah: tambahkan efek khusus! Duang ~~
Tidak sulit untuk melihat dari contoh di atas bahwa ketika kelas string diperpanjang, perlu contoh dua objek, masing -masing objek akan menempati sejumlah memori. Kelas StringBuffer tidak perlu instantiate kelas baru, ia hanya perlu memanggil metode yang diperluas.
Ada juga titik di mana kapasitas memori kelas StringBuffer dapat diskalakan. Mari berikan contoh spesifik:
kelas publik str {public static void main (string [] args) {// mendeklarasikan objek string sb stringBuffer sb = stringBuffer baru (40); System.out.println (sb.capacity ()); // output string kapasitas kapasitas sb.ensurecapacity (100); // Perluas kapasitas System.out.println (sb.capacity ()); // output kapasitas kapasitas string}}Metode kapasitas () mewakili jumlah objek string yang dapat mengakomodasi string dalam memori. Jika Anda ingin memperluas kapasitas memori, Anda dapat menggunakan metode EnsureCapacity ().
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.