- Bài 1: Tổng quan ngôn ngữ Java
- Bài 2: Hướng dẫn cài đặt và cấu hình Java
- Bài 3: Hướng dẫn cài đặt và cấu hình Intellij IDEA trên Window
- Bài 4: Tạo Project và làm quen với Intelij IDEA
- Bài 5: Cú pháp và quy tắc cơ bản trong Java
- Bài 6: Các kiểu dữ liệu trong Java
- Bài 7: Các kiểu biến trong Java
- Bài 8: Toán tử trong Java
- Bài 9: Hệ thống Unicode trong Java
- Bài 10: Các kiểu vòng lặp
- Bài 11: Câu lệnh điều khiển rẽ nhánh
- Bài 12: Câu lệnh Break, Continue trong Java
- Bài 13: Lớp và đối tượng
- Bài 14: Tính chất của lập trình hướng đối tượng trong Java
- Bài 15: Abstract class và Interface trong Java
- Bài 16: Từ khóa super và this trong Java
- Bài 17: Từ khóa static và final trong Java
- Bài 18: Mảng (Array) trong Java
- Bài 19: Package trong Java
- Bài 21: String trong Java
- Bài 22: StringBuffer và StringBuilder
- Bài 23: Tổng quan về File và I/O
- Bài 24: Xử lý nhập xuất bằng Byte Stream và Character Stream
- Bài 25: Thao tác với tệp và thư mục trong Java
- Bài 26: Tổng quan về Collection trong Java
- Bài 27: Những Interface phổ biến trong Java Collection Framework
- Bài 28: Những Class được triển khai dựa trên Interface của Java Collection
- Bài 29: Khái niệm xử lý ngoại lệ trong Java
- Bài 30: Hướng dẫn xử lý ngoại lệ trong Java
- Bài 31: Đa luồng trong Java
- Bài 32: Thread synchronization trong Java
- Bài 33: Tổng quan về Java AWT
- Bài 34: Container trong Java AWT
- Bài 35: Component trong Java AWT
- Bài 36: Layout Manager trong Java AWT
- Bài 37: Xử lý sự kiện trong Java AWT
- Bài 38: Tổng quan về Java Swing
- Bài 39: Container trong Java Swing
- Bài 40: Component trong Java Swing
- Bài 41: Layout trong Java Swing
- Bài 42: Event trong Java Swing
- Bài 43: Menu trong Java Swing
- Bài 44: Kết nối cơ sở dữ liệu với thư viện JDBC trong Java
Bài 8: Toán tử trong Java - Lập trình Java cơ bản
Đăng bởi: Admin | Lượt xem: 5605 | Chuyên mục: Java
Ngôn ngữ Java cung cấp rất nhiều toán tử đa dạng để thao tác với các biến. Chúng ta có thể chia tất cả các toán tử trong Java thành các nhóm sau:
- Toán tử số học
- Toán tử quan hệ
- Toán tử bit
- Toán tử logic
- Toán tử gán
- Toán tử điều kiện
1. Toán tử số học
Các toán hạng của các toán tử số học phải ở dạng số. Các toán hạng kiểu Boolean không sử dụng được, song các toán hạng ký tự cho phép sử dụng loại toán tử này. Một vài kiểu toán tử được liệt kê trong bảng dưới đây.
Giả sử ta có 2 biến a=10 và b=20
Toán tử | Mô tả | Ví dụ |
---|---|---|
+ | Cộng Trả về giá trị tổng hai toán hạng | a+b trả về 30 |
- | Trừ Trả về giá trị khác nhau giữa hai toán hạng hoặc giá trị phủ định của toán hạng. | a-b trả về -10 |
* | Nhân Trả về giá trị tích hai toán hạng | a*b trả về 200 |
/ | Chia Trả về giá trị thương của phép chia | b/a trả về 2 |
% | Chia lấy dư Trả về giá trị là số dư của phép chia | a%b trả về 10 |
++ | Tăng dần Tăng giá trị của biến lên 1 đơn vị | a++ tương đương với a=a+1 |
-- | Giảm dần Giảm giá trị của biến đi 1 đơn vị | a-- tương đương với a=a-1 |
+= | Cộng và gán Cộng giá trị của toán hạng bên trái vào toán hạng bên phải và gán giá trị trả về vào toán hạng bên trái | a+=b tương đương với a= a+b |
-= | Trừ và gán Trừ giá trị của toán hạng bên trái vào toán hạng bên phả và gán giá trị trả vè vào toán hạng bên trái | a-=b tương đương với a=a-b |
*= | Nhân và gán Nhân giá trị của toán hạng bên trái vào toán hạng bên phải và gán giá trị trả về vào toán hạng bên trái | a*=b tương đương với a=a*b |
/= | Chia và gán Chia giá trị của toán hạng bên trái với toán hạng bên phải và gán giá trị trả về vào toán hạng bên trái | a/=b tương đương với a=a/b |
%= | Lấy số dư và gán Chia giá trị của toán hạng bên trái cho toán hạng bên phải và gán giá trị số dư vào toán hạng bên trái | a%=b tương đương với a=a%b |
2. Toán tử quan hệ
Các toán tử quan hệ kiểm tra mối quan hệ giữa hai toán hạng. Kết quả của một biểu thức có dùng các toán tử quan hệ là những giá trị Boolean (logic “đúng” hoặc “sai”). 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ả |
---|---|
== | So sánh bằng Toán tử này kiểm tra sự tương đương của hai toán hạng |
!= | So sánh khác Toán tử này kiểm tra sự khác nhau của hai toán hạng |
> | So sánh lớn hơn Kiểm tra giá trị của toán hạng bên phải lớn hơn toán hạng bên trái hay không |
< | So sánh nhỏ hơn Kiểm tra giá trị của toán hạng bên phải có nhỏ hơn toán hạng bên trái hay không |
>= | So sánh lớn hơn hoặc bằng Kiểm tra giá trị của toán hạng bên phải có lớn hơn hoặc bằng toán hạng bên trái hay không |
<= | So sánh nhỏ hơn hoặc bằng Kiểm tra giá trị của toán hạng bên phải có nhỏ hơn hoặc bằng toán hạng bên trái hay không |
3. Toán tử bit
Các toán tử dang Bit cho phép ta tạo những Bit riêng biệt trong các kiểu dữ liệu nguyên thuỷ. Toán tử Bit dựa trên cơ sở đại số Boolean. Nó thực hiện phép tính trên hai đối số là các bit để tạo ra một kết qủa mới. Một vài dạng toán tử kiểu này được liệt kê dưới đây
Toán tử | Mô tả |
---|---|
~ | Phủ định(NOT) Trả về giá trị phủ định của một số |
& | Toán tử AND Trả về giá trị 1 nếu các toán hạng là 1 và 0 trong các trường hợp khác |
| | Toán tử OR Trả về giá trị 1 nếu một trong các toán hạng là 1 và 0 trong các trường hợp khác. |
^ | Exclusive OR Trả về giá trị là 1 nếu chỉ một trong các toán hạng là 1 và trả về 0 trong các trường hợp khác. |
>> | Dịch sang phải Chuyển dịch toàn bộ các bít của một số sang phải một vị trí, giữ nguyên dấu của số âm. Toán hạng bên trái là số bị dịch còn số bên phải chỉ số vị trí mà các bít cần dịch. |
<< | Dịch sang trái Chuyển toán bộ các bít của một số sang trái một vị trí, giữ nguyên dấu của số âm. Toán hạng bên trái là số bị dịch còn số bên phải chỉ số vị trí mà các bít cần dịch. |
4. Toán tử logic
Các toán tử logic làm việc với các toán hạng Boolean. Một vài toán tử kiểu này được chỉ ra dưới đây
Toán tử | Mô tả |
---|---|
&& | Toán tử và (AND) Trả về một giá trị “Đúng” (True) nếu chỉ khi cả hai toán tử có giá trị “True” |
|| | Toán tử hoặc (OR) Trả về giá trị “True” nếu ít nhất một giá trị là True |
^ | Toán tử XOR Trả về giá trị True nếu và chỉ nếu chỉ một trong các giá trị là True, các trường hợp còn lại cho giá trị False (sai) |
! | Toán tử phủ định (NOT) Toán hạng đơn tử NOT. Chuyển giá trị từ True sang False và ngược lại. |
5. Toán tử gán
Toán tử gán (=) dùng để gán một giá trị vào một biến và có thể gán nhiều giá trị cho nhiều biến cùng một lúc.
Ví dụ đoạn lệnh sau gán một giá trị cho biến num. Thì giá trị trong biến num được gán cho nhiều biến trên một dòng lệnh đơn.
int num = 20000;
int p,q,r,s;
p=q=r=s=num;
Dòng lệnh cuối cùng được thực hiện từ phải qua trái. Đầu tiên giá trị ở biến num được gán cho ‘s’, sau đó giá trị của ‘s’ được gán cho ‘r’ và cứ tiếp như vậy.
6. Toán tử điều kiện
Toán tử điều kiện là một loại toán tử đặc biệt vì nó gồm ba thành phần cấu thành biểu thức điều kiện.
<biểu thức 1> ? <biểu thức 2> : <biểu thức 3>;
- Biểu thức 1: Biểu thức logic. Trả trả về giá trị True hoặc False
- Biểu thức 2: Là giá trị trả về nếu xác định là True
- Biểu thức 3: Là giá trị trả về nếu xác định là False
7. Thứ tự ưu tiên của các toán tử trong Java:
Các biểu thức được viết ra nói chung gồm nhiều toán tử. Thứ tự ưu tiên quyết định trật tự thực hiện các toán tử trên các biểu thức. Bảng dưới đây liệt kê thứ tự thực hiện các toán tử trong Java.
Toán tử | Mô tả |
---|---|
1 | Các toán tử đơn như +,-,++,-- |
2 | Các toán tử số học và các toán tử dịch như *,/,+,-,<<,>> |
3 | Các toán tử quan hệ như >,<,>=,<=,= =,!= |
4 | Các toán tử logic và Bit như &&,||,&,|,^ |
5 | Các toán tử gán như =,*=,/=,+=,-= |
8. Thay đổi thứ tự ưu tiên
Để thay đổi thứ tự ưu tiên trên một biểu thức, bạn có thể sử dụng dấu ngoặc đơn (). Từng phần của biểu thức được giới hạn trong ngoặc đơn được thực hiện trước tiên. Nếu bạn sử dùng nhiều ngoặc đơn lồng nhau thì toán tử nằm trong ngoặc đơn phía trong sẽ thực thi trước, sau đó đến các vòng phía ngoài. Nhưng trong phạm vi một ngoặc đơn thì quy tắc thứ tự ưu tiên vẫn giữ nguyên tác dụng.
Theo dõi VnCoder trên Facebook, để cập nhật những bài viết, tin tức và khoá học mới nhất!
- Bài 1: Tổng quan ngôn ngữ Java
- Bài 2: Hướng dẫn cài đặt và cấu hình Java
- Bài 3: Hướng dẫn cài đặt và cấu hình Intellij IDEA trên Window
- Bài 4: Tạo Project và làm quen với Intelij IDEA
- Bài 5: Cú pháp và quy tắc cơ bản trong Java
- Bài 6: Các kiểu dữ liệu trong Java
- Bài 7: Các kiểu biến trong Java
- Bài 8: Toán tử trong Java
- Bài 9: Hệ thống Unicode trong Java
- Bài 10: Các kiểu vòng lặp
- Bài 11: Câu lệnh điều khiển rẽ nhánh
- Bài 12: Câu lệnh Break, Continue trong Java
- Bài 13: Lớp và đối tượng
- Bài 14: Tính chất của lập trình hướng đối tượng trong Java
- Bài 15: Abstract class và Interface trong Java
- Bài 16: Từ khóa super và this trong Java
- Bài 17: Từ khóa static và final trong Java
- Bài 18: Mảng (Array) trong Java
- Bài 19: Package trong Java
- Bài 21: String trong Java
- Bài 22: StringBuffer và StringBuilder
- Bài 23: Tổng quan về File và I/O
- Bài 24: Xử lý nhập xuất bằng Byte Stream và Character Stream
- Bài 25: Thao tác với tệp và thư mục trong Java
- Bài 26: Tổng quan về Collection trong Java
- Bài 27: Những Interface phổ biến trong Java Collection Framework
- Bài 28: Những Class được triển khai dựa trên Interface của Java Collection
- Bài 29: Khái niệm xử lý ngoại lệ trong Java
- Bài 30: Hướng dẫn xử lý ngoại lệ trong Java
- Bài 31: Đa luồng trong Java
- Bài 32: Thread synchronization trong Java
- Bài 33: Tổng quan về Java AWT
- Bài 34: Container trong Java AWT
- Bài 35: Component trong Java AWT
- Bài 36: Layout Manager trong Java AWT
- Bài 37: Xử lý sự kiện trong Java AWT
- Bài 38: Tổng quan về Java Swing
- Bài 39: Container trong Java Swing
- Bài 40: Component trong Java Swing
- Bài 41: Layout trong Java Swing
- Bài 42: Event trong Java Swing
- Bài 43: Menu trong Java Swing
- Bài 44: Kết nối cơ sở dữ liệu với thư viện JDBC trong Java