Rumah > Java > javaTutorial > Bilakah Anda Harus Menggunakan `String#intern()` dalam Java?

Bilakah Anda Harus Menggunakan `String#intern()` dalam Java?

Mary-Kate Olsen
Lepaskan: 2024-12-26 06:06:14
asal
917 orang telah melayarinya

When Should You Use `String#intern()` in Java?

Bila Menggunakan String#intern() pada String Literals

String#intern() mengembalikan String sedia ada daripada kolam String jika ia hadir atau menambahnya dan mengembalikan rujukan yang ditambah. Walaupun literal String dimasukkan secara automatik, anda mungkin masih perlu menggunakan intern() secara manual dalam senario tertentu.

Pelatihan Automatik String Literal

Dalam kod contoh yang disediakan :

String s1 = "Rakesh";
String s2 = "Rakesh";
String s3 = "Rakesh".intern();
Salin selepas log masuk

Kedua-dua s1 dan s3 mewakili String yang sama, kerana pelatih adalah digunakan secara tersirat pada literal String di Jawa. Inilah sebabnya mengapa kedua-dua baris, s1 == s2 dan s1 == s3, menilai kepada benar.

Kes Penggunaan untuk intern()

Menggunakan intern() adalah berkaitan apabila berurusan dengan Strings yang bukan String literals. Contohnya:

String s1 = "Rakesh";
String s2 = "Rakesh";
String s3 = new String("Rakesh");
String s4 = new String("Rakesh").intern();
Salin selepas log masuk

Dalam contoh ini, s1, s2 dan s4 mewakili Rentetan yang sama dalam kumpulan malar disebabkan oleh intern automatik atau seruan eksplisit intern(). Walau bagaimanapun, s3 merujuk kepada tika String baharu yang tiada dalam kumpulan tetap.

Dengan menggunakan intern() secara eksplisit pada s4, ia secara berkesan menyemak sama ada "Rakesh" sudah wujud dalam kumpulan String. Jika tidak, ia menambahkannya dan mengembalikan rujukan String yang ditambahkan. Ini mengoptimumkan penggunaan String dengan mengurangkan objek String pendua dalam memori dan mempromosikan perbandingan kesamaan rentetan.

Atas ialah kandungan terperinci Bilakah Anda Harus Menggunakan `String#intern()` dalam Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan