Saat menulis kode, seringkali kita harus membuat keputusan berdasarkan banyak kondisi. Menggunakan banyak if-else
bisa membuat kode menjadi sulit dibaca dan dikelola. Untungnya, Dart menyediakan statement switch
yang memungkinkan kita melakukan pengecekan banyak kondisi dengan lebih mudah dan ringkas. Artikel ini akan membahas penggunaan switch-case
dalam Dart, dilengkapi dengan contoh aplikasi kalkulator sederhana.
Dasar-Dasar Switch-Case
Statement switch
memungkinkan kamu untuk memeriksa nilai dari sebuah variabel atau ekspresi dan menjalankan blok kode yang sesuai dengan nilai tersebut. Strukturnya sebagai berikut:
switch (variable/expression) {
case value1:
// lakukan sesuatu
break;
case value2:
// lakukan sesuatu
break;
// lebih banyak kasus
default:
// lakukan sesuatu yang lain
}
switch: Diikuti oleh variabel atau ekspresi yang akan dievaluasi.
case: Setiap kondisi yang mungkin terjadi, diikuti oleh blok kode yang akan dijalankan jika kondisi terpenuhi.
break: Menghentikan eksekusi statement
switch
setelah menemukan kecocokan.default: Menangani semua kondisi yang tidak tercakup oleh
case
. Ini mirip denganelse
dalamif-else
.
Contoh Penggunaan Switch-Case
Berikut ini adalah contoh aplikasi kalkulator sederhana yang menggunakan switch-case
untuk mengevaluasi operasi matematika berdasarkan operator yang diberikan.
void main() {
final firstNumber = 13;
final secondNumber = 18;
final operator = "+";
switch (operator) {
case '+':
print('$firstNumber $operator $secondNumber = ${firstNumber + secondNumber}');
break;
case '-':
print('$firstNumber $operator $secondNumber = ${firstNumber - secondNumber}');
break;
case '*':
print('$firstNumber $operator $secondNumber = ${firstNumber * secondNumber}');
break;
case '/':
if (secondNumber != 0) {
print('$firstNumber $operator $secondNumber = ${firstNumber / secondNumber}');
} else {
print('Error: Division by zero');
}
break;
default:
print('Operator tidak dikenal');
}
}
Penjelasan Kode
Deklarasi Variabel:
final firstNumber = 13; final secondNumber = 18; final operator = "+";
Tiga variabel dideklarasikan:
firstNumber
,secondNumber
, danoperator
.Statement Switch:
switch (operator) { case '+': print('$firstNumber $operator $secondNumber = ${firstNumber + secondNumber}'); break; case '-': print('$firstNumber $operator $secondNumber = ${firstNumber - secondNumber}'); break; case '*': print('$firstNumber $operator $secondNumber = ${firstNumber * secondNumber}'); break; case '/': if (secondNumber != 0) { print('$firstNumber $operator $secondNumber = ${firstNumber / secondNumber}'); } else { print('Error: Division by zero'); } break; default: print('Operator tidak dikenal'); }
Case '+': Menangani penjumlahan dan mencetak hasilnya.
Case '-': Menangani pengurangan dan mencetak hasilnya.
Case '*': Menangani perkalian dan mencetak hasilnya.
Case '/': Menangani pembagian dan memeriksa apakah
secondNumber
tidak sama dengan nol untuk menghindari pembagian dengan nol.Default: Menangani operator yang tidak dikenal.
Keuntungan Menggunakan Switch-Case
Lebih Mudah Dibaca: Struktur
switch-case
lebih teratur dan mudah dibaca dibandingkan dengan banyakif-else
.Efisiensi:
switch-case
dapat lebih efisien dalam beberapa kasus karena memungkinkan kompiler untuk mengoptimalkan pengecekan kondisi.Organisasi Kode: Memisahkan logika berdasarkan kondisi membuat kode lebih terorganisir dan lebih mudah dipelihara.
Statement switch-case
dalam Dart adalah alat yang kuat untuk menangani banyak kondisi dengan cara yang lebih terstruktur dan mudah dibaca dibandingkan dengan if-else
. Dengan menggunakan switch-case
, kamu dapat membuat kode yang lebih efisien dan lebih mudah dipelihara. Contoh aplikasi kalkulator sederhana di atas menunjukkan bagaimana switch-case
dapat digunakan untuk menangani berbagai operasi aritmatika berdasarkan operator yang diberikan. Menguasai switch-case
akan membantu kamu menulis kode yang lebih baik dan lebih efektif dalam berbagai situasi.