Dalam pernyataan if memungkinkan kita untuk memasukkan sebuah kondisi di dalam kode yang kita buat, yakni jika pernyataan kondisi tersebut sudah terpenuhi maka kondisi tersebut yang akan dieksekusi. Untuk memahami tentang statemen if, kita bisa ambil contoh sederhananya : bayangkan saat kita bangun pagi hari dan sudah siap untuk melakukan aktifitas. Pada saat sudah sampai pintu luar rumah kita tidak yakin apakah diluar akan turun hujan atau tidak, jika di luar turun hujan maka kita akan membawa payung tetapi jika tidak turun hujan maka sebaliknya kita tidak membawa payung. Segmen artikel kali ini kita akan membahas bentuk percabangan sederhana yakni menggunakan kondisi if.
Daftar Isi
Control Flow
Berikut ini adalah control flow dari statement if :

Alur yang diatas menjelaskan bahwa jika kondisi sudah terpenuhi, kompilator akan mengeksekusi kode bersyarat dan jika kondisinya belum terpenuhi kompilator akan keluar blok kode tersebut tanpa menjalankan kode bersyarat.
Sintax
Dalam pembuatan sebuah program, ada kalanya kita butuh sebuah percabangan, yakni jika terdapat kondisi terpenuhi syarat maka kode akan dijalankan, sebaliknya jika kondisi bernilai false maka kondisi yang ditentukan akan dilewatkan atau tidak dijalankan. Konsep tersebut dibuat dengan struktur IF dengan aturang penulisannya sebagai berikut :

Sintaknya dimulai dengan menggunakan kata kunci if diikuti dengan tanda kurung ( () ). Di dalam tanda kurung, tuliskan kondisi yang kita ingin tentukan. Lalu kita menyisipkan kurung kurawal buka ( { ), setelah kita akan menuliskan sebuah conditional code yang kita inginkan dan yang terakhir ditutup dengan tanda kurung kurawal tutup ( } ).
Studi Kasus IF
Di dalam studi kasus menggunakan if kali ini kita akan mencoba mengosongkan sebuah daftar dengan kondisi if hanya saja jika kondisi tersebut tidak kosong. kita dapat memeriksa apakah sebuah koleksi kosong atau tidak, menggunakan properti isEmpty dan isNotEmpty. properti isEmpty memiliki pengertian bernilai true jika koleksi yang kita masukkan kosong, sedangkan properti isNotEmpty akan bernilai true jika koleksi yang kita masukkan tidak kosong.
Properti dapat diakses menggunakan operator titik ( . )
belajarflutter.com
Mari kita buat contoh menggunakan statement if ini akan berjalan di bahasa pemrograman dart :

Source Code :
void main() {
var testList = [2,4,8,16,32];
print(testList);
if(testList.isNotEmpty){
print('Tulisan ini akan tampil, jika kondisi bernilai true');
testList.clear();
}
print(testList);
}
Output :
[2, 4, 8, 16, 32]
Tulisan ini akan tampil, jika kondisi bernilai true
[]
Pada contoh diatas, kondisi yang kita gunakan memakai properti isNotEmpty untuk memeriksa apakah variabel testList kosong atau tidak Kosong (Baris Ke 5 ). Jika tidak kosong maka akan menampilkan sebuah kalimat pada statement print “Tulisan ini akan tampil, jika kondisi bernilai true” (Baris Ke 6), Lalu menghapus semua item yang ada pada variabel testList (Baris ke 7).
Latihan :
Cobalah buat kode seperti diatas lalu menggukan properti isEmpty, dan lihatlah outputnya
belajarflutter.com
Mari kita lanjutkan dengan materi If di sub-bab berikutnya.
Else Dan Else if
Sebelum membahas materi ini lebih lanjut, kita akan coba memahami sub-bab kali ini dengan contoh pada kehidupan nyata, bayangkan jika kita adalah sebuah tim voli di dalam sebuah pertandingan, pada saat pertandingan berakhir untuk menentukan siapa yang menjadi pemenangnya, wasit akan menghitung total poin yang dihasilkan oleh masing-masing tim. Jika tim A menghasilkan poin yang lebih banyak, maka tim A dinyatakan sebagai pemenangnya, dan jika tidak tim B yang akan dinyatakan sebagai pemenangnya.
Jika kita ingin menuliskan beberapa kode pada skenario diatas, hal yang pertama muncul dalam benak kita adalah pernyataaan if. Akan tetapi pernyataan if tidak akan dapat melakukan statement diatas karena statement skenario diatas memiliki dua kondisi dan dua hasil, maka diperlukan dengan memberikan pernyataan lain. else digunakan dengan if dan memberitahu kompilator apa yang harus dilakukan jika kondisi if tidak terpenuhi.
Control Flow

Pada dasarnya, kondisi if – else merupakan kondisi tambahan dari kondisi if. Blok kode IF akan tetap dijalankan ketika kondisi bernilai true, namun sekarang kita tambahkan dengan else, else akan dijalankan ketika kondisi bernilai false. Berikut sintak dasarnya :

Bagian condition merupakan bagian penentu dari struktur percabangan if ini, jika condition if bernilai TRUE maka blok kode if yang akan dijalankan. Jika condition tidak terpenuhi atau bernilai FALSE maka blok kode else lah yang akan dijalankan.
belajarflutter.com
Else in Action
Pada sub bab kali ini kita akan membuat studi kasus menggunakan if else dengan contoh yang sederhana menentukan siapa pemenang dalam pertandingan volli :

Code :
void main() {
//deklarasikan variabel
var teamA = 50;
var teamB = 85;
//if statement
if(teamA > teamB){
print('Team A Menang');
} else {
print('Team B Menang');
}
}
Output :
Connecting to VM Service at ws://127.0.0.1:41183/dr1OElhHe64=/ws
Team B Menang
Exited
Pada contoh di atas kita mendeklarasikan var teamA dan var teamB dimana setiap variabel kita berikan nilai, lalu kita berikan kondisi jika nilai teamA lebih besar dari teamB maka statement print Team A Menang akan ditampilkan pada console, jika tidak maka statement print akan menampilkan Team B Menang.
Latihan Mandiri :
belajarflutter.com
coba buatlah kondisi diatas team B memiliki nilai yang lebih besar dari team A.Ubahlah nilai variabel diatas dan lihatlah outputnya
IF – ELSE IF – ELSE
Pada dasarnya konsep if else if ini adalah struktur logika program yang di dapat dengan cara menyambung beberapa perintah IF ELSE menjadi satu kesatuan. Jadi jika kondisi if pertama tidak terpenuhi atau bernilai false, maka kode program akan lanjut pada kondisi else if berikutnya, jika kondisi tersebut belum terpenuhi juga maka di lanjutkan lagi ke kondisi else if berikutnya dan seterusnya hingga blok else terakhir atau kondisi If menghasilkan nilai true.
berikut ini adalah format sintaks umum yang biasa digunakan :

else if dapat juga digunakan format statement else :

Mari kita coba buat dengan studi kasus sebelumnya dengan menambahkan konsep if – else if – else :
Code IF – Else If – Else
void main()
{
var teamA = 80;
var teamB = 80;
if(teamA > teamB){
print('Team A Menang');
} else if(teamB > teamA){
print('Team B Menang');
} else{
print('Kedua Team Seri');
}
}
Output :
Connecting to VM Service at ws://127.0.0.1:41891/OxZdzSO94Ew=/ws
Kedua Team Seri
Exited
Pada kasus diatas dapat kita lihat statement if pertama variabel teamA memiliki kondisi nilai lebih besar dari variabel teamB pada saat kita compile nilai yang dihasilkan masih false, lalu pada statement else if selanjutnya kita memberikan kondisi nilai variabel teamB lebih besar dari variabel teamA sehingga value yang di hasilkan masih false, pada akhir statement jika teamA dan teamB tidak memiliki nilai yang lebih banyak, secara default maka akan menampilkan statement yang bernilai true.