1. Lô-gic Bool

Trong Java, bạn không thể viết biểu thức 18 < age <65. Đó là cú pháp không chính xác và chương trình sẽ không biên dịch.

Nhưng bạn có thể viết nó như thế này:

(18 < age) AND (age < 65)

Tất nhiên, thay vì từ AND, sẽ có một toán tử logic . Bây giờ chúng ta sẽ nói về chúng chi tiết hơn.

Có ba toán tử logic trong Java: AND(&&), OR(||) và NOT(!).

Tin vui là bạn có thể sử dụng dấu ngoặc đơn để xây dựng các biểu thức logic ở bất kỳ độ phức tạp nào.

Tin xấu là các nhà phát triển Java đã quyết định sử dụng ký hiệu từ ngôn ngữ C thay vì các từ and, ornot.

Nhìn vào màn hình:

Toán tử logic Kỳ vọng Thực tế
AND (∧) and &&
OR (∨) or ||
NOT (¬) not !

Dưới đây là một số ví dụ về việc sử dụng các toán tử logic trong Java:

Sự biểu lộ Diễn dịch Giải trình
(0 < a) && (a < 100)
(0 < a) and (a < 100)
(0 < a) AND (a < 100)
(!a) && (!b)
(not a) and (not b)
(NOT a) AND (NOT b)
!(!a || !b)
not((not a) or (not b))
NOT((NOT a) OR (NOT b))


2. Ví dụ sử dụng toán tử so sánh và biến boolean

Bất cứ nơi nào bạn có thể viết một biểu thức logic, bạn có thể viết một biến logic.

Ví dụ:

Mã số Giải trình
int age = 35;
if (age >= 18 && age <= 65)
   System.out.println("You can work");
Nếu giá trị của tuổi nằm giữa 1865, thì cụm từ "Bạn có thể làm việc" được hiển thị.
int age = 35;
boolean isYoung = (age < 18);
if (!isYoung && age <= 65)
   System.out.println("You can work");
Chúng tôi đã tạo một isYoungbiến và chuyển phần đầu tiên của biểu thức vào đó. Chúng tôi chỉ đơn giản là thay thế age >= 18bằng age < 18.
int age = 35;
boolean isYoung = (age < 18);
boolean isOld = (age > 65);
if (!isYoung && !isOld)
   System.out.println("You can work");
Chúng tôi đã tạo một biến isOld và chuyển phần thứ hai của biểu thức vào đó. Ngoài ra, chúng tôi đã thay thế age <= 65bằng age > 65.

Ba ví dụ này là tương đương nhau. Chỉ trong ví dụ thứ hai, chúng ta mới chuyển một phần của biểu thức từ ifcâu lệnh thành một biến boolean riêng biệt ( isYoung). Trong ví dụ thứ ba, chúng tôi đã chuyển phần thứ hai của biểu thức thành một biến thứ hai ( isOld).



3. Số học logic

Hãy lướt qua các phép toán logic một cách ngắn gọn.

Toán ANDtử is &&, còn được gọi là phép kết hợp .

Sự biểu lộ Kết quả
true && true
true
true && false
false
false && true
false
false && false
false

Nói cách khác, kết quả của một biểu thức truechỉ khi cả hai giá trị tạo thành biểu thức là true. Nếu không, nó luôn luôn là false.

Các ORnhà điều hành là ||, còn được gọi là disjunction .

Sự biểu lộ Kết quả
true || true
true
true || false
true
false || true
true
false || false
false

Nói cách khác, kết quả của một biểu thức luôn là truenếu ít nhất một số hạng trong biểu thức là true. Nếu cả hai đều false, thì kết quả là false.

Toán NOTtử is !, còn được gọi là phép nghịch đảo logic .

Sự biểu lộ Kết quả
!true
false
!false
true

Toán tử chuyển truesang falsevà ngược lại.

Biểu thức hữu ích:

Sự biểu lộ Kết quả
m && !m
false
m || !m
true
!(a && b)
!a || !b
!(a || b)
!a && !b