THINK JAVA: CÁCH SUY NGHĨ NHƯ NHÀ KHOA HỌC MÁY TÍNH - Trang 34

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"

);