xem cách so sánh chu i M c
ỗ ở ụ 8.10.
4.3 Th c hi n ch n l a
ự
ệ
ọ ự
D ng th hai c a th c hi n teho đi u ki n
ạ
ứ
ủ
ự
ệ
ề
ệ là th c hi n l nh theo l a ch n, trong đó có hai kh năng và
ự
ệ ệ
ự
ọ
ả
đi u ki n đ
c đ t ra đ căn c vào đó mà l a ch n th c hi n m t trong hai. Cú pháp có d ng nh sau:
ề
ệ
ượ ặ
ể
ứ
ự
ọ
ự
ệ
ộ
ạ
ư
if
(x%2 == 0) {
System.out.println(
"x la so chan"
);
}
else
{
System.out.println(
"x la so le"
);
}
N u ph n d c a phép chia
ế
ầ
ư ủ
x
cho 2 là 0, thì chúng ta bi t r ng
ế ằ
x
là s ch n, và ch
ng trình s hi n th
ố ẵ
ươ
ẽ ể
ị
thông báo đi u này. N u đi u ki n không đ
c tho mã thì l nh th hai s đ
c th c hi n. Vì đi u ki n
ề
ế
ề
ệ
ượ
ả
ệ
ứ
ẽ ượ
ự
ệ
ề
ệ
ho c là đ
c tho mãn, ho c không; nên luôn ch có m t trong hai ph
ng án đ
c th c hi n.
ặ
ượ
ả
ặ
ỉ
ộ
ươ
ượ
ự
ệ
Nhân ti n nói thêm, n u b n có ý đ nh th
ng xuyên ki m tra tính ch n l , có th b n s mu n
ệ
ế
ạ
ị
ườ
ể
ẵ ẻ
ể ạ ẽ
ố “gói”
đo n mã l nh này vào trong m t ph
ng th c, nh sau:
ạ
ệ
ộ
ươ
ứ
ư
public static void
printParity(
int
x) {
if
(x%2 == 0) {
System.out.println(
"x la so chan"
);
}
else
{
System.out.println(
"x la so le"
);
}
}
Bây gi b n có m t ph
ng th c tên là
ờ ạ
ộ
ươ
ứ
printParity đ in ra thông báo thích h p cho m i s nguyên b n
ể
ợ
ỗ ố
ạ
cung c p cho nó. Trong
ấ
main b n s kích ho t ph
ng th c này nh sau:
ạ ẽ
ạ
ươ
ứ
ư
printParity(17);
Hãy luôn nh r ng khi b n
ớ ằ
ạ kích ho t
ạ m t ph ng th c, thì không nh t thi t ph i khai báo các ki u c a
ộ
ươ
ứ
ấ
ế
ả
ể ủ
đ i s đ
c cung
ố ố ượ
c p. Java có th hình dung ra ki u d li u là gì. B n ph i ki m ch đ tránh vi t
ấ
ể
ể
ữ ệ
ạ
ả
ề
ế ể
ế
nh ng l nh ki u nh :
ữ
ệ
ể
ư
int
number = 17;
printParity(
int
number);
// SAI!!!
4.4 Các đi u ki n xâu chu i
ề
ệ
ỗ
Đôi khi b n c n ph i ki m tra m t s các đi u ki n có liên quan và ch n trong m t s nh ng hành
ạ ầ
ả
ể
ộ ố
ề
ệ
ọ
ộ ố
ữ
đ ng.
ộ
M t cách th c hi n vi c này là
ộ
ự
ệ
ệ
xâu chu i
ỗ m t lo t các
ộ
ạ
if và else:
if
(x > 0) {
System.out.println(
"x la so duong"
);
}
else if
(x < 0) {
System.out.println(
"x la so am"
);
}
else
{
System.out.println(
"x bang khong"
);