Tóm Tắt
Toán tử là gì?
Toán tử (Operator) là các ký tự đặc biệt được quy ước để thực hiện một hành động nào đó trong lập trình. Trong Java có nhiều loại toán tử.
Ví dụ : +, -, *, /
Có nhiều loại toán tử trong Java như sau:
- Toán tử Tăng / Giảm
- Toán tử Toán học
- Toán tử Dịch chuyển
- Toán tử Quan hệ
- Toán tử Bit
- Toán tử Logic
- Toán tử 3 Ngôi (Ternary)
- Toán tử gán
Thứ tự ưu tiên các loại toán tử trong Java
Có rất nhiều loại toán tử trong Java cũng như những ngôn từ lập trình khác. Vậy nên, khi sử dụng chung cùng với nhau chúng cần phải tuân theo thứ tự ưu tiên nhất định .
Hãy xem ảnh sau để biết thứ tự ưu tiên của các loại toán tử trong Java:
Bạn đang đọc: Toán tử. Ví dụ về Toán tử trong JAVA | JAVA DEV
Thứ tự ưu tiên các loại toán tử trong Java
Ví dụ về các loại toán tử trong Java
Toán tử, Ví dụ về Toán tử trong Java
1. Toán tử đơn: ++, –, ~, !
class OperatorExample{
public static void main(String args[]){
int x=10;
System.out.println(x++);//10 (11)
System.out.println(++x);//12
System.out.println(x--);//12 (11)
System.out.println(--x);//10
}
}
Kết quả nhận được là :
10
12
12
10
Một ví dụ khác giúp bạn hiểu rõ toán tử + + và — hơn
class OperatorExample{
public static void main(String args[]){
int a=10;
int b=10;
System.out.println(a++ + ++a);//10+12=22
System.out.println(b++ + b++);//10+11=21
}
}
Kết quả :
22
21
Ví dụ tiếp theo về ~ và !
class OperatorExample{
public static void main(String args[]){
int a=10;
int b=-10;
boolean c=true;
boolean d=false;
System.out.println(~a);
System.out.println(~b);
System.out.println(!c);
System.out.println(!d);
}
}
Kết quả :
-11
9
false
true
2. Ví dụ về toán tử toán học trong Java
Ví dụ 1 :
class OperatorExample{
public static void main(String args[]){
int a=10;
int b=5;
System.out.println(a+b);//15
System.out.println(a-b);//5
System.out.println(a*b);//50
System.out.println(a/b);//2
System.out.println(a%b);//0
}
}
Kết quả :
15
5
50
2
0
Ví dụ 2 :
class OperatorExample{
public static void main(String args[]){
System.out.println(10*10/5+3-1*4/2);
}
}
Kết quả :
21
3. Ví dụ về toán tử Dịch chuyển trong JAVA
Ví dụ về toán tử Dịch trái trong JAVA
Toán tử di dời trái trong Java được sử dụng để di dời toàn bộ những bit trong một giá trị sang bên trái của 1 số ít lần được chỉ định .
class OperatorExample{
public static void main(String args[]){
System.out.println(10<<2);//10*2^2=10*4=40
System.out.println(10<<3);//10*2^3=10*8=80
System.out.println(20<<2);//20*2^2=20*4=80
System.out.println(15<<4);//15*2^4=15*16=240
}
}
Kết quả :
40
80
80
240
Ví dụ về toán tử Dịch phải trong JAVA
Ví dụ toán tử di dời trái : Toán tử di dời phải trong Java được sử dụng để di dời toàn bộ những bit trong một giá trị sang bên phải một số ít lần được chỉ định .
class OperatorExample{
public static void main(String args[]){
System.out.println(10>>2);//10/2^2=10/4=2
System.out.println(20>>2);//20/2^2=20/4=5
System.out.println(20>>3);//20/2^3=20/8=2
}
}
Kết quả :
2
5
2
So sánh toán tử >> và toán tử >>>
class OperatorExample{
public static void main(String args[]){
//Đối với số Dương, >> và >>> làm việc như nhau
System.out.println(20>>2);
System.out.println(20>>>2);
//Đối với số Âm
System.out.println(-20>>2);
System.out.println(-20>>>2);
}
}
Kết quả :
5
5
-5
1073741819
Lý do của sự khác nhau này là toán tử >> bảo toàn bit dấu, trong khi đó toán tử >> > không bảo toàn bit dấu .
Nó cho hiệu quả là một số dương khi tất cả chúng ta vận dụng toán tử >> > trên 1 số ít âm. Và MSB ( bit tiên phong ) được thay thế sửa chữa bằng 0 .
4. So sánh toán tử Logic AND và toán tử Bit AND
class OperatorExample{
public static void main(String args[]){
int a=10;
int b=5;
int c=20;
System.out.println(a
Kết quả :
false
false
Một ví dụ khác:
class OperatorExample{
public static void main(String args[]){
int a=10;
int b=5;
int c=20;
System.out.println(a
Kết quả :
false
10
false
11
5. So sánh toán tử Logic OR và Toán tử Bit OR
Toán tử Logic OR | | không kiểm tra điều kiện kèm theo thứ hai nếu điều kiện kèm theo tiên phong là ĐÚNG .
Và nó sẽ kiểm tra điều kiện kèm theo thứ hai chỉ khi điều kiện kèm theo tiên phong là SAI .
Toán tử Bit OR | luôn kiểm tra cả hai điều kiện kèm theo mặc dầu điều kiện kèm theo tiên phong là ĐÚNG hay SAI .
class OperatorExample{
public static void main(String args[]){
int a=10;
int b=5;
int c=20;
System.out.println(a>b||ab|ab||a++b|a++
Kết quả :
true
true
true
10
true
11
6. Toán tử 3 ngôi trong Java
Toán tử 3 ngôi trong Java dùng để sửa chữa thay thế cho câu lệnh if – else. Xem ngay ví dụ bên dưới để hiểu cách sử dụng
class OperatorExample{
public static void main(String args[]){
int a=2;
int b=5;
int min=(a
Đoạn mã min = ( a < b ) ? a : b hoàn toàn có thể được diễn đạt như sau :
- Nếu a nhỏ hơn b thì gán min = a
- Ngược lại thì gán min = b
Kết quả :
2
Một ví dụ khác ,
class OperatorExample{
public static void main(String args[]){
int a=10;
int b=5;
int min=(a
Kết quả :
5
7. Ví dụ về toán tử gán trong Java
Toán tử gán khá là dễ nên mình nghĩ sẽ không cần phải nói nhiều, bạn xem ví dụ là hiểu .
class OperatorExample{
public static void main(String args[]){
int a=10;
int b=20;
a+=4;//a=a+4 (a=10+4)
b-=4;//b=b-4 (b=20-4)
System.out.println(a);
System.out.println(b);
}
}
Kết quả
14
16
Một ví dụ khác về toán tử gán trong Java
class OperatorExample{
public static void main(String[] args){
int a=10;
a+=3;//10+3
System.out.println(a);
a-=4;//13-4
System.out.println(a);
a*=2;//9*2
System.out.println(a);
a/=2;//18/2
System.out.println(a);
}
}
Kết quả :
13
9
18
9
Ví dụ về toán tử gán với kiểu short
class OperatorExample{
public static void main(String args[]){
short a=10;
short b=10;
//a+=b;//a=a+b có vẻ rất tốt
a=a+b;//Biên dịch lại lỗi vì 10+10=20 là kiểu int
System.out.println(a);
}
}
Kết quả :
Compile time error
Chính cho nên vì thế, tất cả chúng ta cần phải ép kiểu
class OperatorExample{
public static void main(String args[]){
short a=10;
short b=10;
a=(short)(a+b);//20 đã được ép kiểu thành short
System.out.println(a);
}
}
Kết quả:
20
Lời kết
Như vậy là bạn đã biết về các Toán tử trong Java cũng như Thứ tự ưu tiên của các toán tử trong Java.
- Tham khảo: Khóa học Java tốt nhất ở Hà Nội
Nếu có toán tử nào bạn chưa hiểu hay không rõ chúng được ưu tiên như thế nào thì hãy tự đặt ra những ví dụ và xem trình biên dịch trả lại hiệu quả gì nhé .
Chúc bạn Tự học Lập trình Java thật tốt.
Source: https://final-blade.com
Category: Kiến thức Internet