0Pricing
Swift Academy · Pelajaran

Interpolasi String Kustom

Perluas interpolasi dengan segmen Anda sendiri.

Interpolasi String Kustom adalah pelajaran Swift Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Swift Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Swift Academy mencakup 4 pelajaran total.

Interpolasi Teks Khusus

Swift memungkinkan Anda memperluas cara kerja interpolasi dengan menambahkan metode ke String.StringInterpolation. Dengan demikian, Anda dapat menyesuaikan perilaku untuk jenis atau label argumen tertentu.

extension String.StringInterpolation {
    mutating func appendInterpolation(shout value: String) {
        appendLiteral(value.uppercased() + "!")
    }
}
print("Message: \(shout: "hello")")

Metode appendInterpolation

Setiap interpolasi khusus berupa mutating func appendInterpolation(...). Parameternya menentukan apa yang Anda tulis di antara tanda kurung dalam teks.

extension String.StringInterpolation {
    mutating func appendInterpolation(repeat text: String, times: Int) {
        appendLiteral(String(repeating: text, count: times))
    }
}
print("\(repeat: "ab", times: 3)")

appendLiteral dan appendInterpolation

Di dalam metode khusus, Anda membangun keluaran dengan memanggil appendLiteral untuk teks biasa dan menggunakan kembali interpolasi yang sudah ada untuk nilai.

extension String.StringInterpolation {
    mutating func appendInterpolation(twice value: Int) {
        appendLiteral("\(value)\(value)")
    }
}
print("\(twice: 7)")

Argumen Interpolasi Berlabel

Label parameter pertama menjadi kata kunci yang Anda gunakan, seperti \(shout: ...). Hal ini memperjelas maksud di lokasi pemanggilan.

extension String.StringInterpolation {
    mutating func appendInterpolation(currency amount: Double) {
        appendLiteral(String(format: "$%.2f", amount))
    }
}
print("Price: \(currency: 9.5)")

Beberapa Parameter

Interpolasi khusus dapat menerima beberapa parameter, sehingga Anda dapat meneruskan opsi bersama nilainya.

extension String.StringInterpolation {
    mutating func appendInterpolation(_ value: Double, places: Int) {
        appendLiteral(String(format: "%.\(places)f", value))
    }
}
print("\(3.14159, places: 2)")

Memformat Nilai

Salah satu penggunaan umum adalah menampilkan nilai dengan cara khusus sesuai domain, misalnya menambahkan isian pada angka hingga mencapai lebar tetap.

extension String.StringInterpolation {
    mutating func appendInterpolation(padded value: Int, width: Int) {
        appendLiteral(String(format: "%0\(width)d", value))
    }
}
print("ID: \(padded: 42, width: 5)")

Keluaran Bersyarat

Interpolasi khusus dapat menyertakan logika dan menghasilkan teks yang berbeda berdasarkan masukan.

extension String.StringInterpolation {
    mutating func appendInterpolation(yesNo flag: Bool) {
        appendLiteral(flag ? "Yes" : "No")
    }
}
print("Active: \(yesNo: true)")

Menggunakan Kembali Interpolasi yang Ada

Di dalam metode Anda, Anda dapat memanggil appendInterpolation untuk jenis bawaan dan membangun di atas perilaku standar.

extension String.StringInterpolation {
    mutating func appendInterpolation(bracketed value: Int) {
        appendLiteral("[")
        appendInterpolation(value)
        appendLiteral("]")
    }
}
print("\(bracketed: 9)")

Nilai Parameter Bawaan

Interpolasi khusus dapat memberikan nilai bawaan untuk parameter, sehingga pemanggil boleh mengabaikannya.

extension String.StringInterpolation {
    mutating func appendInterpolation(money value: Double, symbol: String = "$") {
        appendLiteral(symbol + String(format: "%.2f", value))
    }
}
let sym = "EUR "
print("\(money: 5.0)")
print("\(money: 5.0, symbol: sym))")

Kapan Menggunakan Interpolasi Khusus

Gunakan interpolasi khusus ketika pola pemformatan berulang di seluruh kode Anda; interpolasi ini memusatkan logikanya di balik lokasi pemanggilan yang rapi.

extension String.StringInterpolation {
    mutating func appendInterpolation(stars n: Int) {
        appendLiteral(String(repeating: "*", count: n))
    }
}
print("Rating: \(stars: 4)")

Ringkasan Interpolasi Khusus

Dengan memperluas String.StringInterpolation, Anda mengubah pemformatan berulang menjadi sintaks yang mudah dibaca dan dapat digunakan kembali, yang disematkan langsung dalam teks.

extension String.StringInterpolation {
    mutating func appendInterpolation(percent value: Double) {
        appendLiteral(String(format: "%.0f%%", value * 100))
    }
}
print("Done: \(percent: 0.75)")

Pemeriksaan Singkat

Ingat kembali mekanisme di balik interpolasi khusus.

Ringkasan: Interpolasi Teks Khusus

Anda telah mempelajari bahwa memperluas String.StringInterpolation dengan metode appendInterpolation memungkinkan Anda menentukan sintaks interpolasi baru; menggunakan appendLiteral dan interpolasi bertingkat untuk membangun keluaran; serta menggunakan label, beberapa parameter, dan nilai bawaan untuk pemformatan yang rapi dan dapat digunakan kembali.

extension String.StringInterpolation {
    mutating func appendInterpolation(upper value: String) {
        appendLiteral(value.uppercased())
    }
}
print("Hello \(upper: "swift")")

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Interpolasi String Kustom” gratis?

Ya — teks lengkap “Interpolasi String Kustom” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Swift Academy, upgrade ke CoddyKit PRO. Kursus Swift Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Interpolasi String Kustom”?

Perluas interpolasi dengan segmen Anda sendiri. Kamu berlatih Swift Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Swift Academy?

Tidak diperlukan pengalaman sebelumnya. Swift Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Interpolasi String Kustom” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Swift Academy ini?

Ya. Setiap pelajaran Swift Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Interpolasi String Dasar
  2. Memformat Bilangan dalam String
  3. Literal String Multibaris
  4. Interpolasi String Kustom
← Kembali ke Swift Academy