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

6.5 Bi u th c logic

H u h t các toán t mà ta đã g p đ u t o ra k t qu có cùng ki u v i các toán h ng trong đó. L y ví d ,

ế

ề ạ

ế

toán t

ử + nh n hai s

ố int r i cũng t o ra m t s

ộ ố int, ho c hai s

ố double r i t o thành m t

ồ ạ

ộ double, v.v.

Nh ng ngo i l mà ta g p, đó là các

ạ ệ

toán t quan h

, v n đ so sánh các

int ho c

ặ float r i tr

ồ ả

l i

ạ true ho c

ặ false. true và false là nh ng giá tr đ c bi t trong Java; hai giá tr này h p nên m t ki u g i

ị ặ

boolean. B n có th nh l i r ng khi tôi đ nh nghĩa m t ki u, tôi có nói r ng đó là m t t p các giá tr .

ớ ạ ằ

ộ ậ

Đ i v i các s

ố ớ

ố int, double hay chu i

ỗ String, nh ng t p h p nh v y đ u r t l n. Song v i

ư ậ

ề ấ ớ

ớ boolean, t p

h p này ch ch a hai giá tr .

ỉ ứ

Các bi u th c boolean, hay bi u th c logic, cùng các bi n cũng ho t đ ng gi ng nh các bi u th c và

ế

ạ ộ

ư

bi n thu c ki u khác:

ế

boolean

flag;

flag =

true

;

boolean

testResult =

false

;

Ví d th nh t là m t l i khai báo bi n đ n gi n; ví d th hai là m t l nh gán, còn ví d th ba là m t

ụ ứ

ộ ờ

ế

ơ

ụ ứ

ộ ệ

ụ ứ

l nh kh i t o.

ở ạ

Các giá tr

ị true và false là nh ng t khóa trong Java, vì v y chúng có th xu t hi n v i màu ch khác tùy

theo môi tr

ng phát tri n tích h p mà b n đang dùng.

ườ

K t qu c a m t toán t đi u ki n là m t giá tr boolean, b i v y b n có th l u tr k t qu c a phép so

ế

ả ủ

ử ề

ở ậ

ể ư

ữ ế

ả ủ

sánh vào m t bi n:

ế

boolean

evenFlag = (n%2 == 0);

// đúng nếu n chẵn

boolean

positiveFlag = (x > 0);

// đúng nếu x dương

r i l i dùng nó làm b ph n c a m t câu l nh đi u ki n:

ồ ạ

ậ ủ

if

(evenFlag) {

System.out.println(

"Khi tôi kiểm tra, n là số chẵn"

);

}

M t bi n đ

c dùng theo cách này có th g i là m t bi n

ế

ượ

ể ọ

ế d u hi u

vì nó đánh d u cho s có m t ho c

v ng m t c a m t đi u ki n nào đó.

ặ ủ

6.6 Toán t logic

Có ba toán t logic

trong Java: AND, OR và NOT, v n đ

c kí hi u b i ba d u

ượ

ấ &&, || và !. Ý nghĩa c a

các toán t này gi ng nh nghĩa các t t

ng ng trong ti ng Anh. Ch ng h n,

ư

ừ ươ

ế

ạ x > 0 && x < 10 ch đúng

khi

x

l n h n 0

ơ

nh h n 10.

ỏ ơ

evenFlag || n%3 == 0 ch đúng khi

m t trong hai

đi u ki n là đúng; nghĩa

là evenFlag đúng ho c

số

n

chia h t cho

ế

3.

Sau cùng, toán t

not

ph đ nh m t bi u th c Boole. Do v y

ủ ị

ậ !evenFlag là đúng n u nh

ế

ư evenFlag là sai

—t c là n u s đã cho là l .

ế ố

Toán t logic có th làm đ n gi n nh ng câu l nh đi u ki n l ng ghép. Ch ng h n, b n có th vi t l i

ơ

ệ ồ

ể ế ạ

mã l nh d

i đây b ng m t câu l nh đi u ki n đ n l đ

c không?

ướ

ơ ẻ ượ

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.