Toán Tử (Operators)
Toán tử là những ký hiệu được sử dụng để thực hiện các phép toán và so sánh trong lập trình. Java cung cấp nhiều loại toán tử khác nhau, bao gồm: Toán tử số học (Arithmetic Operators), Toán tử bit (Bitwise Operators), Toán tử so sánh (Comparison Operators), Toán tử logic (Logical Operators), Toán tử điều kiện (Conditional Operators), Toán tử gán (Assignment Operators).

Ⅰ. Toán tử số học
Sử dụng cho các phép toán cộng, trừ, nhân, chia, modulo (lấy dư).
| Toán tử | Mô tả | Ví dụ |
|---|---|---|
| + | Phép cộng | a + b |
| - | Phép trừ | a - b |
| * | Phép nhân | a * b |
| / | Phép chia | a / b |
| % | Phép chia lấy dư | a % b |
| ++ | Tăng thêm 1 | a + 1 |
| -- | Giảm đi 1 | a - 1 |
Ⅱ. Toán tử bit
Các toán tử bit thực hiện các phép toán trên các bit của số nguyên.
| Toán tử | Mô tả |
|---|---|
| ~ | Phủ định NOT: Trả về giá trị phủ định của một bít. Chuyển đổi các bit 1 thành 0 và ngược lại. |
| & | Toán tử AND: So sánh từng bit của hai số. Kết quả là 1 chỉ khi cả hai bit đều là 1, 0 trong các trường hợp khác. |
| | | Toán tử OR: So sánh từng bit của hai số. Kết quả là 1 nếu một trong hai bit là 1, 0 trong trường hợp cả hai bit đều là 0. |
| ^ | Toán tử Exclusive OR: So sánh từng bit của hai số. Kết quả là 1 chỉ khi hai bit khác nhau, 0 trong trường hợp hai bit giống nhau. |
| >> | Dịch phải: Dịch các bit của số nguyên sang phải một số vị trí nhất định. Các bit trống được lấp bằng bit dấu (0 cho số dương và 1 cho số âm). |
| << | Dịch trái: Dịch các bit của số nguyên sang trái một số vị trí nhất định. Các bit trống được lấp bằng bit 0. |
Ⅲ. Toán tử so sánh
Các toán tử so sánh dùng để so sánh các giá trị và trả về kết quả dạng boolean.
| Toán tử | Mô tả | Ví dụ |
|---|---|---|
| == | Bằng nhau | a == b |
| != | Khác nhau | a != b |
| > | Lớn hơn | a > b |
| < | Nhỏ hơn | a < b |
| >= | Lớn hơn hoặc bằng | a >= b |
| <= | Nhỏ hơn hoặc bằng | a <= b |
Ⅳ. Toán tử logic
Các toán tử logic làm việc với các toán hạng Boolean. Các toán tử quan hệ được sử dụng trong các cấu trúc điều khiển.
| Toán tử | Mô tả |
|---|---|
| && | Toán tử (AND) đọc là “Và”. Trả về giá trị: True: nếu cả hai toán hạng đều là True. False: nếu ít nhất một toán hạng là False. |
| || | Toán tử (OR) đọc là “Hoặc”. Trả về giá trị: True: nếu ít nhất một toán hạng là True. False: chỉ khi cả hai toán hạng đều là False. |
| ^ | Toán tử XOR đọc là “Hoặc ngoại trừ”. Trả về giá trị: True: nếu chỉ một trong hai toán hạng là True. False: nếu cả hai toán hạng đều là True hoặc cả hai đều là False. |
| ! | Toán tử (NOT) đọc là “Không”. Trả về giá trị: True: nếu toán hạng là False. False: nếu toán hạng là True. |
Ⅴ. Toán tử điều kiện
Toán tử điều kiện, còn được gọi là toán tử ba ngôi, là một loại toán tử đặc biệt trong Java được sử dụng để xác định điều kiện và trả về giá trị tương ứng dựa trên điều kiện đó. Nó là một cú pháp ngắn gọn để thay thế cho các câu lệnh if-else truyền thống. Bạn sử dụng cú pháp sau:
Cú pháp
<điều_kiện> ? <giá_trị_khi_đúng> : <giá_trị_khi_sai>
Giải thích các thành phần:
↳ <điều_kiện>: Biểu thức logic trả về giá trị true hoặc false.
↳ <giá_trị_khi_đúng>: Giá trị được trả về nếu <điều_kiện> là true.
↳ <giá_trị_khi_sai>: Giá trị được trả về nếu <điều_kiện> là false.
↳ Nếu điều kiện đúng: Trả về giá trị sau dấu ?.
↳ Nếu điều kiện sai: Trả về giá trị sau dấu :.
Ví dụ: Main.java
public class Main {
public static void main(String[] args) {
int age = 20;
String message = (age >= 18) ? "Bạn đã đủ tuổi" : "Bạn chưa đủ tuổi";
System.out.println(message); // In ra "Bạn đã đủ tuổi"
}
}
Kết quả của chương trình là:
Ⅵ. Toán tử gán
Toán tử gán mở rộng trong Java là những toán tử kết hợp phép toán và phép gán trong cùng một biểu thức. Giúp cho việc viết code ngắn gọn và dễ đọc hơn.
| Toán tử | Mô tả | Ví dụ |
|---|---|---|
| = | Gán giá trị của toán hạng phải cho toán hạng trái. | c = 10 |
| += | Cộng và gán Thực hiện phép toán cộng giữa c và a, sau đó gán kết quả cho c. | c += a tương đương với c = c + a |
| -= | Trừ và gán Thực hiện phép toán trừ giữa c và a, sau đó gán kết quả cho c. | c -= a tương đương với c = c - a |
| *= | Nhân và gán Thực hiện phép toán nhân giữa c và a, sau đó gán kết quả cho c. | c *= a tương đương với c = c * a |
| /= | Chia và gán Thực hiện phép toán chia giữa c và a, sau đó gán kết quả cho c. | c /= a tương đương với c = c / a |
| %= | Lấy số dư và gán Thực hiện phép toán chia lấy phần dư giữa c và a, sau đó gán kết quả cho c. | c %= a tương đương với c = c % a |
| &= | AND và gán Thực hiện phép toán bitwise AND giữa c và a, sau đó gán kết quả cho c. | c &= a tương đương với c = c & a |
| ^= | XOR và gán Thực hiện phép toán bitwise XOR giữa c và a, sau đó gán kết quả cho c | c ^= a tương đương với c = c ^ a |
| <<= | Dịch trái và gán Dịch trái c với số bit bằng giá trị của a, sau đó gán kết quả cho c | c <<= a tương đương với c = c << a |
| >>= | Dịch phải và gán Dịch phải c với số bit bằng giá trị của a, sau đó gán kết quả cho c | c >>= a tương đương với c = c >> a |