Label Argumen
Termasuk bagian Dasar-Dasar dalam perjalanan Swift di Coddy. Pelajaran 54 dari 86.
Swift memberimu kendali atas cara pemanggilan fungsi dibaca dengan menggunakan label argumen. Label argumen adalah yang kamu gunakan saat memanggil fungsi, sedangkan nama parameter adalah yang kamu gunakan di dalam badan fungsi.
Kamu bisa menentukan keduanya dengan menulis label argumen sebelum nama parameter:
func greet(to name: String) {
print("Hello, \(name)!")
}
greet(to: "Alice") // output: Hello, Alice!Di sini, to adalah label argumen (digunakan saat memanggil), dan name adalah nama parameter (digunakan di dalam fungsi). Ini membuat pemanggilannya terdengar lebih alami: "sapa Alice."
Terkadang kamu ingin menghilangkan label sepenuhnya agar pemanggilan lebih rapi. Gunakan garis bawah (_) sebagai label argumen:
func square(_ number: Int) -> Int {
return number * number
}
print(square(5)) // output: 25Tanpa garis bawah, kamu harus menulis square(number: 5). Garis bawah menghilangkan keharusan itu, sehingga pemanggilan fungsi menjadi lebih sederhana saat nama fungsi sudah menjelaskan tujuannya.
Tantangan
MudahBuat dua fungsi yang menunjukkan teknik label argumen yang berbeda:
Fungsi 1: send
- Gunakan label argumen
messagedengan nama parametertext(tipeString) - Gunakan label argumen
todengan nama parameterrecipient(tipeString) - Kembalikan string dengan format:
"Sending '[text]' to [recipient]"
Fungsi 2: double
- Gunakan garis bawah
_untuk menghilangkan label argumen - Nama parameter
number(tipeInt) - Kembalikan angka yang dikalikan dengan 2
Setelah mendefinisikan kedua fungsi, baca dua string dan satu bilangan bulat dari input, lalu panggil kedua fungsi dan cetak hasilnya pada baris terpisah.
Kamu akan menerima input berikut:
- Baris pertama: teks pesan (misalnya,
"Hello") - Baris kedua: nama penerima (misalnya,
"Alice") - Baris ketiga: angka yang akan dikalikan dua (misalnya,
"7")
Misalnya, jika inputnya adalah "Hello", "Alice", dan "7", outputnya seharusnya:
Sending 'Hello' to Alice
14Coba sendiri
// Baca input
let messageText = readLine()!
let recipientName = readLine()!
let numberToDouble = Int(readLine()!)!
// TODO: Tulis kodemu di bawah ini
// Definisikan fungsi 'send' dengan label argumen 'message' dan 'to'
// Definisikan fungsi 'double' tanpa label argumen menggunakan '_'
// Panggil kedua fungsi dan cetak hasilnyaPelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 1
Operator AritmetikaOperator ModuloPenugasan GabunganUlasan: Matematika SederhanaOperator Perbandingan7I/O Dasar
Fungsi printInterpolasi stringInput ReadLineKonversi tipe dataRangkuman: Sampai 120Rangkuman: Benar atau Salah10Fungsi
Deklarasikan FungsiParameter dan ArgumenNilai KembalianLabel ArgumenUlasan: Fungsi SigmaUlasan: Fungsi ValidasiNilai Default13Melakukan Perulangan pada Urutan
Melakukan Perulangan pada ElemenMetode EnumerasiMelakukan Perulangan pada String P1Melakukan Perulangan pada String P22Variabel
let vs varAnotasi TipeBilanganstringBooleanKonvensi PenamaanRingkasan: Inisialisasi Variabel5Operator Bagian 2
Operator Logika Bagian 1Operator Logika Bagian 2Ulasan: Logika SederhanaOperator Logika Bagian 3Operator Ternary8Kalkulator Pembagi Tagihan
Pesan SambutanMendapatkan Input11FizzBuzz dengan Variasi
Gambaran Umum PermainanFungsi FizzBuzz3Optional
Apa Itu OptionalMembuka Optional dengan If LetGuard LetOperator Nil CoalescingUlasan: Membuka Optional dengan Aman6Pengambilan Keputusan
Pernyataan IfIf - ElseRekap: Kalkulator SederhanaPernyataan SwitchSwitch dengan Rentang9Perulangan
For-In LoopWhile LoopRepeat-While LoopBreakContinueRingkasan: FaktorialRentang dalam LoopLoop BersarangRingkasan: Input DinamisLatihan sendiri: Playground Swift