Toán tử logic được sử dụng để kiểm tra tính đúng đắn của một hoặc nhiều biểu thức. Giá trị trả về của các biểu thức này là một giá trị kiểu boolean, true hoặc false. Trong Java, chúng ta có các toán tử logic như sau:
- AND (&&)
- OR (||)
- NOT (!)
Toán tử AND
Toán tử AND được sử dụng trong trường hợp chúng ta có hai hay nhiều biểu thức và chúng ta cần tất cả các biểu thức đó đều đúng, có nghĩa là kết quả trả về của chúng đều là true.
Ví dụ:
1 2 3 4 |
int a = 10; int b = 15; int c = 200; System.out.println(c > a && c > b); |
Ở đây chúng ta có hai biểu thức là c > a và c > b và toán tử AND được sử dụng để chắc chắn rằng giá trị của c đều lớn hơn hai giá trị của hai biến còn lại là a và b.
Toán tử OR
Toán tử OR cũng được sử dụng trong trường hợp chúng ta có hai hay nhiều biểu thức và chúng ta chỉ cần một trong các biểu thức đó là đúng, nghĩa là giá trị của nó là true. Các biểu thức còn lại true hay false đều được nhưng ít nhất phải có một cái là true.
Ví dụ:
1 2 3 4 |
int a = 10; int b = 15; int c = 200; System.out.println(c > a || b > c); |
Trong ví dụ này, chúng ta chỉ cần c lớn a là được rồi, b có lớn hơn c hay không cũng ko sao. 😀
Toán tử NOT
Toán tử NOT dùng để đảo ngược kết quả của một hay nhiều biểu thức trả về giá trị boolean. Có nghĩa nếu một biểu thức bất kỳ trả về giá trị true, sử dụng toán tử NOT thì kết quả cuối cùng sẽ là ngược lại với true, là false.
Ví dụ:
1 2 3 |
int a = 10; int b = 15; System.out.println(!(a > b)); |
Kết quả của ví dụ này là true bởi vì a không lớn hơn b, false, đảo ngược lại sẽ là true.
Để các bạn hiểu rõ hơn về kết quả của các biểu thức sử dụng với toán tử logic, mình đưa ra bảng dưới đây, chúng ta thường gọi nó là bảng chân trị:
Toán tử AND (&&) | Toán tử OR (||) | Toán tử NOT (!) |
true && true => true | true || true => true | !true => false |
true && false => false | true || false => true | !false => true |
false && true => false | false || true => true | |
false && false => false | false || false => false | |
true && true && false => false | false || false || true => true |
Nhìn vào bảng trên chúng ta có thể thấy:
- Toán tử AND chỉ có thể trả về true nếu tất cả các kết quả của biểu thức đều là true, nếu một trong số chúng là false thì kết quả sẽ là false.
- Toán tử OR chỉ trả về false nếu tất cả các kết quả của biểu thức là false, ngược lại, chỉ cần một biểu thức là true thì kết quả sẽ là true.
- Toán tử NOT thì đảo ngược kết quả có giá trị boolean.