Operator Logika Bagian 3
Termasuk bagian Dasar-Dasar dalam perjalanan Kotlin di Coddy. Pelajaran 26 dari 93.
Presedensi mengatur cara sebuah ekspresi dikelompokkan. ! memiliki prioritas tertinggi, diikuti &&, lalu ||. Jadi, a || b && c berarti a || (b && c).
val a = true
val b = false
val c = false
println(a || (b && c)) // true
println((a || b) && c) // falsePengelompokan berbeda dari urutan evaluasi. || berhenti ketika operand kirinya bernilai true, sedangkan && berhenti ketika operand kirinya bernilai false. Pada ekspresi pertama di atas, b && c tidak pernah dievaluasi karena a sudah bernilai true.
Tanda kurung dapat mengubah pengelompokan atau memperjelasnya. Evaluasi operand kiri terlebih dahulu, lalu tentukan apakah operand kanan diperlukan.
Tantangan
MudahTulis fungsi canAccessFeature yang menerima isAdmin, isPremium, dan hasTrialActive, lalu mengembalikan apakah pengguna dapat mengakses fitur premium.
Pengguna dapat mengakses fitur tersebut jika mereka adalah admin, atau jika mereka adalah anggota premium dan memiliki uji coba yang masih aktif.
Gunakan tanda kurung untuk memastikan urutan evaluasi yang benar: kondisi && harus dikelompokkan terlebih dahulu sebelum digabungkan dengan ||.
Parameter:
isAdmin(Boolean): Apakah pengguna adalah administratorisPremium(Boolean): Apakah pengguna memiliki langganan premiumhasTrialActive(Boolean): Apakah pengguna memiliki periode uji coba yang masih aktif
Nilai yang dikembalikan: true jika pengguna dapat mengakses fitur tersebut, false jika tidak (Boolean)
Driver yang disediakan memanggil fungsi kamu dan mencetak nilai yang dikembalikannya. Pertahankan signature fungsi dan jangan tambahkan fungsi main.
Coba sendiri
fun canAccessFeature(isAdmin: Boolean, isPremium: Boolean, hasTrialActive: Boolean): Boolean {
// Tulis kodemu di sini
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 1
Operator AritmetikaOperator ModuloPenugasan GabunganOperator PerbandinganRingkasan: Matematika Sederhana7Dasar input dan output
Fungsi PrintlnTemplate stringInput ReadLineKonversi Tipe DataRingkasan: Tahun hingga PensiunRingkasan: Benar atau Salah10Fungsi
Deklarasikan FungsiParameter dan ArgumenNilai KembalianArgumen BernamaNilai DefaultFungsi Ekspresi TunggalUlasan: Fungsi SigmaUlasan: Fungsi Validasi5Operator Bagian 2
Operator Logika Bagian 1Operator Logika Bagian 2Operator Logika Bagian 3Ternary dengan Ekspresi ifRangkuman: Logika Sederhana8Kalkulator Pembagi Tagihan
Pesan Selamat DatangMenerima Input11FizzBuzz dengan Sentuhan Unik
Gambaran Umum GameFungsi FizzBuzz3Kemungkinan Null
Apa Itu Keamanan NullTipe yang Dapat Bernilai NullOperator Pemanggilan AmanOperator ElvisDasar Tantangan FungsiPenegasan Bukan NullRangkuman: Akses Aman6Pengambilan Keputusan
Pernyataan IfIf - ElseIf sebagai EkspresiEkspresi WhenWhen dengan RentangUlasan - Kalkulator Sederhana9Perulangan
For loopWhile loopDo-while loopBreakContinueRentang dalam loopLoop BersarangRingkasan: FaktorialRingkasan: Input DinamisLatihan sendiri: Playground Kotlin