0Pricing
Android Academy · Pelajaran

Fungsi & Lambda

Definisikan fungsi dengan parameter dan tipe pengembalian, gunakan argumen bawaan dan bernama, serta tulis ekspresi lambda yang ringkas.

Fungsi & Lambda adalah pelajaran Android Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 3. 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 Android Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Android Academy mencakup 3 pelajaran total.

Mengapa Fungsi?

Fungsi memungkinkan Anda menulis satu blok kode lalu menggunakannya kembali di mana saja.

  • Mengurangi pengulangan
  • Membuat kode lebih mudah dibaca dan diuji
  • Memecah masalah besar menjadi bagian-bagian yang lebih kecil

Dalam Kotlin, fungsi merupakan elemen kelas satu — Anda dapat menyimpannya dalam variabel dan meneruskannya.

Sintaks Fungsi Dasar

Fungsi Kotlin menggunakan kata kunci fun:

fun greet(name: String): String {
    return "Hello, $name!"
}

fun main() {
    val msg = greet("Alice")
    println(msg)  // Hello, Alice!

    println(greet("Bob"))  // Hello, Bob!
}

Fungsi Ekspresi Tunggal

Jika isi fungsi hanya berupa satu ekspresi, Anda dapat menggunakan = dan menghilangkan kurung kurawal serta return:

fun square(n: Int): Int = n * n

fun add(a: Int, b: Int) = a + b  // type inferred

fun main() {
    println(square(5))   // 25
    println(add(3, 7))   // 10
}

Argumen Default & Bernama

Fungsi Kotlin mendukung nilai parameter default — Anda tidak perlu membuat fungsi dengan variasi parameter:

  • Default: fun greet(name: String = "World")
  • Bernama: panggil dengan greet(name = "Alice") untuk mengabaikan urutan posisi

Default & Bernama dalam Praktik

Argumen default membuat API Anda tetap rapi:

fun buildProfile(
    name: String,
    age: Int = 0,
    role: String = "User"
): String {
    return "$name | age=$age | $role"
}

fun main() {
    println(buildProfile("Alice"))
    println(buildProfile("Bob", age = 30))
    println(buildProfile("Carol", 25, "Admin"))
}

Apa Itu Lambda?

Lambda adalah fungsi anonim — fungsi tanpa nama.

  • Sintaks: { params -> body }
  • Disimpan dalam variabel: val double = { x: Int -> x * 2 }
  • Diteruskan ke fungsi lain sebagai argumen

Lambda ada di berbagai bagian Android: pendengar klik, transformasi daftar, dan coroutine.

Contoh Lambda

Simpan dan panggil lambda seperti fungsi biasa:

fun main() {
    val double = { x: Int -> x * 2 }
    println(double(4))   // 8

    val add = { a: Int, b: Int -> a + b }
    println(add(3, 5))   // 8

    // Lambda with no params
    val sayHi = { println("Hi!") }
    sayHi()              // Hi!
}

Fungsi Orde Tinggi

Fungsi orde tinggi menerima fungsi lain sebagai parameter atau mengembalikan fungsi.

Pustaka standar Kotlin penuh dengan fungsi seperti ini: filter, map, forEach.

Sintaks lambda di akhir: ketika argumen terakhir berupa lambda, pindahkan lambda tersebut ke luar tanda kurung.

Sintaks Lambda di Akhir

Teruskan lambda sebagai argumen terakhir di luar tanda kurung:

fun applyTwice(n: Int, operation: (Int) -> Int): Int {
    return operation(operation(n))
}

fun main() {
    val result = applyTwice(3) { x -> x * 2 }
    println(result)  // 12  (3 * 2 = 6, 6 * 2 = 12)

    // 'it' is the implicit single parameter
    val doubled = applyTwice(5) { it + it }
    println(doubled) // 20
}

Pemeriksaan Singkat

Perhatikan kode ini. Apa yang akan dicetaknya?

val triple = { x: Int -> x * 3 }
println(triple(4))

Ringkasan: Fungsi & Lambda

Anda telah mempelajari:

  • fun mendefinisikan fungsi dengan parameter dan tipe kembalian
  • Fungsi ekspresi tunggal menggunakan bentuk singkat =
  • Argumen default dan bernama menggantikan fungsi dengan variasi parameter
  • Lambda adalah fungsi anonim: { params -> body }
  • Fungsi orde tinggi menerima fungsi sebagai parameter

Berikutnya: mengendalikan alur program dengan kondisi dan perulangan.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Fungsi & Lambda” gratis?

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

Apa yang akan aku pelajari di “Fungsi & Lambda”?

Definisikan fungsi dengan parameter dan tipe pengembalian, gunakan argumen bawaan dan bernama, serta tulis ekspresi lambda yang ringkas. Kamu berlatih Android 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 Android Academy?

Tidak diperlukan pengalaman sebelumnya. Android 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 2 dari 3.

Berapa lama pelajaran “Fungsi & Lambda” 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 Android Academy ini?

Ya. Setiap pelajaran Android 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. Variabel & Tipe Data
  2. Fungsi & Lambda
  3. Alur Kendali
← Kembali ke Android Academy