1. Pengenalan
Dalam tutorial ringkas ini, kami akan menyiasat pelbagai cara menggabungkan tali di Kotlin.
2. Menggunakan Kaedah tambah ()
Kelas String Kotlin mengandungi kaedah tambah () :
operator fun plus(other: Any?): String (source)
Ia mengembalikan String yang diperoleh dengan menggabungkan String rujukan dengan String yang disahkan sebagai argumen .
Sebagai contoh:
@Test fun givenTwoStrings_concatenateWithPlusMethod_thenEquals() { val a = "Hello" val b = "Baeldung" val c = a.plus(" ").plus(b) assertEquals("Hello Baeldung", c) }
Juga, penting untuk menyadari bahawa jika objek yang dilewatkan bukan String , representasi String dari objek akan digunakan.
3. Menggunakan Operator +
Kaedah termudah untuk menggabungkan Strings di Kotlin adalah dengan menggunakan operator + . Hasilnya, kita akan mendapat baru String objek terdiri daripada Strings di sebelah kiri dan sebelah kanan pengendali:
@Test fun givenTwoStrings_concatenateWithPlusOperator_thenEquals() { val a = "Hello" val b = "Baeldung" val c = a + " " + b assertEquals("Hello Baeldung", c) }
Titik utama yang lain adalah bahawa di Kotlin, berkat kelebihan operator, pengendali + dapat menyelesaikan kaedah tambah () .
Secara umum, ini adalah kaedah biasa untuk menggabungkan sebilangan kecil String .
4. Menggunakan StringBuilder
Seperti yang kita ketahui, objek rentetan tidak berubah. Dengan setiap gabungan menggunakan kaedah + operator atau tambah () , kami mendapat objek String baru . Sebaliknya, untuk mengelakkan pembuatan objek String yang tidak perlu , kita dapat menggunakan StringBuilder .
Oleh itu, StringBuilder membuat penyangga dalaman tunggal yang mengandungi rentetan akhir.
Oleh itu, StringBuilder lebih cekap ketika menggabungkan sebilangan besar rentetan.
Berikut adalah contoh gabungan String menggunakan StringBuilder :
@Test fun givenTwoStrings_concatenateWithStringBuilder_thenEquals() { val builder = StringBuilder() builder.append("Hello") .append(" ") .append("Baeldung") assertEquals("Hello Baeldung", builder.toString()) }
Akhirnya, kita boleh menggunakan StringBuffer untuk penggabungan yang selamat daripada benang dan bukannya StringBuilder.
5. Menggunakan Templat Rentetan
Kotlin juga mempunyai fitur yang disebut String templates. String templat mengandungi ungkapan yang dapat dinilai untuk membina String .
Ungkapan templat rentetan bermula dengan tanda dolar diikuti dengan nama pemboleh ubah.
Berikut adalah contoh gabungan String menggunakan templat:
@Test fun givenTwoStrings_concatenateWithTemplates_thenEquals() { val a = "Hello" val b = "Baeldung" val c = "$a $b" assertEquals("Hello Baeldung", c) }
Penyusun Kotlin menerjemahkan kod ini kepada:
new StringBuilder().append(a).append(" ").append(b).toString()
Akhirnya, proses ini adalah interpolasi String .
6. Kesimpulannya
Dalam artikel ini, kami telah mempelajari beberapa cara untuk menggabungkan objek String di Kotlin.
Seperti biasa, semua kod yang ditunjukkan dalam tutorial ini boleh didapati di GitHub.