A, Câu lệnh if-else
6.1) những lưu ý về code else-if
+) Viết code để mà trường hợp bình thường phải rõ ràng, cần đảm bảo rằng trường hợp hiếm khi xảy ra không làm lu mờ sự thực thi của trường hợp bình thường, điều này làm tăng tính dễ đọc và tính hoạt động của code
+) Sử dụng > thay vì <= hay < thay vì >=
+) Nên đặt điều kiện mong là xảy ra trước trong if hơn là trong else
+) không nên kiểm tra điều kiện một cách bừa bãi làm rối loạn chương trình
Ví dụ đơn giản sau mô tả một cách dùng thay thế dấu “ <= ” bằng trường hộp ngược lại của nó
Ví dụ minh họa nhập vào một số và so sánh số đó với 10
public class Class1 {
public static void main(String arg[]) { Scanner nhap=new Scanner(System.in); System.out.print("nhap vao so : ");
int soNhapVao = nhap.nextInt();
if(soNhapVao < 10 )
System.out.println("ban nhap vao mot so nho hon 10 ");
else
System.out.println("ban nhap vao mot so lon hon hoac bang 10");
}} }
Thay vì kiểm tra điều kiện soNhapVao >= 10 ta kiểm tra ngược lại
+) Câu lệnh bên trong if phải có nghĩa, ví dụ chương trình sau nhìn rất vô nghĩa:
import java.util.Scanner;
public class Class1 {
public static void main(String arg[]) { Scanner nhap = new Scanner(System.in); System.out.print("nhap vao so : ");
int soNhapVao = nhap.nextInt();
if(soNhapVao < 11)
/* neu dieu kien dung thi khong lam gi */;
else
System.out.println(" so nhap vao lon hon 10 : "+(soNhapVao- 10)+ "don vi");
}
Mục đích của chương trình trên là nếu số nhập vào nhỏ hơn 10 thì không thực hiện gì cả, nếu số lớn hơn 10 ta in ra màn hình nó lớn hơn 10 bao nhiêu đơn vị. Thay vì viết như trên ta có thể viết lại chương trình như sau sẽ thấy chương trình có vẻ “hay hơn”
import java.util.Scanner;
public class Class1 {
public static void main(String arg[]) { Scanner nhap = new Scanner(System.in); System.out.print("nhap vao so : ");
int soNhapVao = nhap.nextInt();
if(soNhapVao > 10)
System.out.println(" so nhap vao lon hon 10 :"
+ (soNhapVao-10)+"don vi "); }
}
Ở trên có if nhưng không có else, nếu điều kiện trong if sai thì máy không làm gì cả…