Video: Technology Stacks - Computer Science for Business Leaders 2016 2024
Inilah teka-teki di Jawa: Anda memiliki dua tim bisbol - Hankees dan kaus kaki. Anda ingin menampilkan skor tim pada dua baris terpisah, dengan skor pemenang terdaftar terlebih dahulu. (Di layar komputer, skor pemenang ditampilkan di atas skor pecundang.) Apa yang terjadi bila skor diikat?
Apakah kamu menyerah? Jawabannya adalah, tidak ada jawaban yang benar. Apa yang terjadi tergantung pada cara Anda menulis program. Bila nilainya sama, kondisi
hankees> kaus kaki
adalah
false
. Jadi aliran eksekusi program turun ke klausa
yang lain
. Klausul tersebut menampilkan skor Socks terlebih dahulu dan skor Hankees kedua.
importjava. util. Pemindai;
impor java statis lang. Sistem. di;
impor java statis lang. Sistem. di luar;
classTwoTeams {
public static void main (String args []) {
Keyboard pemindai = pemindai baru (di );
inthankees, kaus kaki;
keluar cetak (skor "Hankees and Socks?");
hankees = keyboard. nextInt ();
kaus kaki = keyboard. nextInt ();
keluar println ();
jika (hankees> kaus kaki) {
keluar. cetak ("Hankees:");
keluar println (hankees);
keluar cetak ("kaus kaki:");
keluar println (kaus kaki);
} lagi {
keluar. cetak ("kaus kaki:");
keluar println (kaus kaki);
keluar cetak ("Hankees:");
keluar println (hankees);
}
keyboard. dekat();
}
}
Program tidak harus bekerja seperti ini. Jika Anda mengambil kode ini dan mengganti kaus kaki
ke
hankees> = kaus kaki
, maka, jika dasi, skor Hankees lebih dulu.
Misalkan Anda menginginkan kontrol yang sedikit lebih. Bila nilainya sama, Anda ingin melihat pesan
Ini adalah dasi
. Untuk melakukan ini, pikirkanlah dalam bentuk garpu tiga cabang. Anda memiliki cabang untuk kemenangan Hankees, cabang lain untuk kemenangan Socks, dan cabang ketiga untuk dasi. Anda bisa menulis kode ini dengan beberapa cara yang berbeda, namun salah satu cara yang masuk akal adalah kode di bawah ini.
Pergilah, tim, pergilah!
impor java statis lang. Sistem. di luar;
kelas WinLoseOrTie {
public static void main (String args []) {
Keyboard pemindai = pemindai baru (Sistem masuk);
int hankees, kaus kaki;
keluar cetak (skor "Hankees and Socks?");
hankees = keyboard. nextInt ();
kaus kaki = keyboard. nextInt ();
keluar println ();
jika
(hankees> kaus kaki) { keluar. println ("Hankees menang …");
keluar cetak ("Hankees:");
keluar println (hankees);
keluar cetak ("kaus kaki:");
keluar println (kaus kaki);
}
lagi jika (kaus kaki> hankees) { keluar.println ("Socks win …");
keluar cetak ("kaus kaki:");
keluar println (kaus kaki);
keluar cetak ("Hankees:");
}
lain { keluar. println ("Ini dasi …");
keluar cetak ("Hankees:");
keluar println (hankees);
keluar cetak ("kaus kaki:");
keluar println (kaus kaki);
}
keyboard. dekat();
}
}
jika
hanya memiliki dua cabang - cabang
benar
dan cabang
salah
. Jadi Anda menggabungkan alternatif untuk membentuk pernyataan
cascading jika
.
jika
jika (
Condition1) { SomeStatements
} else if (
Condition2) { OtherStatements
} else {
EvenMoreStatements
}
Secara umum, Anda dapat menggunakan
yang lain jika
sebanyak yang Anda inginkan:
jika
(hankeesWin) { keluar. println ("Hankees menang …");
keluar cetak ("Hankees:");
keluar println (hankees);
keluar cetak ("kaus kaki:");
keluar println (kaus kaki);
} lagi jika
(kaus kakiWin) { keluar. println ("Socks win …");
keluar println (kaus kaki);
keluar cetak ("Hankees:");
} lagi jika
(isatie) { keluar. println ("Ini dasi …");
keluar cetak ("Hankees:");
keluar println (hankees);
keluar cetak ("kaus kaki:");
keluar println (kaus kaki);
} else if
(gameCancelled) {
} lagi {
keluar. println ("Permainan belum usai.");
Tidak ada yang istimewa tentang mencatat
jika
. Ini bukan fitur bahasa pemrograman baru. Pernyataan Cascading
jika
memanfaatkan celah di Jawa - celah tentang menghilangkan kawat gigi keriting dalam keadaan tertentu. Selain itu, pernyataan turunan
jika
hanya memberi Anda cara baru untuk memikirkan keputusan dalam kode Anda.