String Concatenate di Kotlin

1. Perkenalan

Dalam tutorial singkat ini, kita akan menyelidiki berbagai cara menggabungkan string di Kotlin.

2. Menggunakan Metode plus ()

Kelas String Kotlin berisi metode plus () :

operator fun plus(other: Any?): String (source)

Ini mengembalikan String yang diperoleh dengan menggabungkan String referensi dengan String yang diteruskan 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 disadari bahwa jika objek yang diteruskan bukanlah sebuah String , representasi String dari objek tersebut akan digunakan.

3. Menggunakan + Operator

Cara paling sederhana untuk menggabungkan Strings di Kotlin adalah dengan menggunakan operator + . Hasilnya, kita mendapatkan objek String baru yang terdiri dari Strings di kiri dan kanan operator:

@Test fun givenTwoStrings_concatenateWithPlusOperator_thenEquals() { val a = "Hello" val b = "Baeldung" val c = a + " " + b assertEquals("Hello Baeldung", c) }

Poin penting lainnya adalah di Kotlin, berkat kelebihan operator, operator + diselesaikan ke metode plus () .

Secara umum, ini adalah metode umum untuk menggabungkan sejumlah kecil String .

4. Menggunakan StringBuilder

Seperti yang kita ketahui, objek String tidak dapat diubah. Dengan setiap penggabungan menggunakan metode + operator atau plus () , kita mendapatkan objek String baru . Sebaliknya, untuk menghindari pembuatan objek String yang tidak perlu , kita dapat menggunakan StringBuilder .

Karenanya, StringBuilder membuat buffer internal tunggal yang berisi string terakhir.

Oleh karena itu, StringBuilder lebih efisien saat menggabungkan banyak string.

Berikut adalah contoh penggabungan String menggunakan StringBuilder :

@Test fun givenTwoStrings_concatenateWithStringBuilder_thenEquals() { val builder = StringBuilder() builder.append("Hello") .append(" ") .append("Baeldung") assertEquals("Hello Baeldung", builder.toString()) }

Terakhir, kita bisa menggunakan StringBuffer untuk rangkaian aman-thread alih-alih StringBuilder.

5. Menggunakan Template String

Kotlin juga memiliki fitur yang disebut template String . Template string berisi ekspresi yang dievaluasi untuk membuat String .

String ekspresi Template memulai dengan tanda dolar diikuti dengan nama variabel.

Berikut adalah contoh penggabungan String menggunakan template:

@Test fun givenTwoStrings_concatenateWithTemplates_thenEquals() { val a = "Hello" val b = "Baeldung" val c = "$a $b" assertEquals("Hello Baeldung", c) }

Compiler Kotlin menerjemahkan kode ini menjadi:

new StringBuilder().append(a).append(" ").append(b).toString()

Terakhir, proses ini adalah interpolasi String .

6. Kesimpulan

Di artikel ini, kita telah mempelajari beberapa cara untuk menggabungkan objek String di Kotlin.

Seperti biasa, semua kode yang disajikan dalam tutorial ini dapat ditemukan di GitHub.