Các Toán tử Trong JAVA | JAVA DEV

Toán tử trong JAVA là một biểu tượng được sử dụng để thực hiện các hoạt động cụ thể. Ví dụ: +, -, *, /

Có nhiều loại toán tử trong JAVA được đưa ra dưới đây :
Các Toán tử Trong JAVACác Toán tử Trong JAVA

  1. Toán tử Unary
  2. Toán tử toán học
  3. Toán tử Shift
  4. Toán tử quan hệ (Quá đơn giản nên tự tìm hiểu)
  5. Toán tử Bitwise
  6. Toán tử Logic
  7. Toán tử Ternary
  8. Toán tử gán

1. Toán tử Unary

Các toán tử Unary trong Java chỉ yêu cầu một toán hạng. Toán tử Unary được sử dụng để thực hiện các hoạt động khác nhau, tức là:

  • Tăng hoặc giảm giá trị một đơn vị
  • Phủ định một biểu thức
  • Đảo ngược giá trị của một Boolean

Ví dụ về toán tử ++ và —

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ả:

10
12
12
10

Lưu ý :

  • ++a hay –a là thực hiện thực hiện tăng hoặc giảm trước sau đó tính toán. Cuối cùng là gán giá trị mới cho a.
  • a++ hay a– là thực hiện tính toán trước sau đó mới gán giá trị cho a. Cuối cùng là gán giá trị mới cho a.

Điều này sẽ dẫn tới sự độc lạ khi đo lường và thống kê trong biểu thức :
Ví dụ, cho a = 2 :

  • Biểu thức 7 + ++a sẽ bằng 10. Vì ++a sẽ thực hiện tăng a lên 1 đơn vị thành 3 sau đó thực hiện phép tính 7 + 3. Rồi gán giá trị đã tăng cho a. (Lúc này a = 3)
  • Biểu thức 7 + a++ sẽ bằng 9. Vì phép tính 7 + 2 sẽ được thực hiện trước. Sau đó mới tăng a lên 1 đơn vị. Rồi gán giá trị đã tăng cho a. (Lúc này a = 3)

Xem ví dụ sau :

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ụ về toán tử ! 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);//-11
    System.out.println(~b);//9
    System.out.println(!c);//false (Nghịch đảo giá trị Boolean)  
    System.out.println(!d);//true  
  }
}

Kết quả

-11
9
false
true

2. Toán tử toán học trong Java

Các Toán tử Toán học trong Java được sử dụng để thực hiện phép cộng, phép trừ, phép nhân và phép chia. Chúng hoạt động như các hoạt động toán học cơ bản.

Ví dụ về toán tử số học Java

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ụ về toán tử số học Java: Biểu thức

class OperatorExample{  
  public static void main(String args[]){  
    System.out.println(10*10/5+3-1*4/2);
  }
}

Kết quả :

21

3. Toán tử dịch chuyển trong Java

Toán tử dịch chuyển trái trong Java

Toán tử dịch chuyển trái (Left shift Operator) trong Java được sử dụng để dịch chuyển tất cả các bit trong một giá trị sang bên trái theo một số lần được chỉ định.

Ví dụ về toán tử dịch chuyển trái trong Java

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

Toán tử dịch chuyển phải trong Java

Toán tử dịch chuyển phải trong Java “>>” được sử dụng để di chuyển giá trị toán hạng bên trái sang phải theo số bit được chỉ định bởi toán hạng bên phải.

Ví dụ về toán tử dịch chuyển phải trong Java

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

Ví dụ về toán tử dịch chuyển Java: >> vs >>>

class OperatorExample{  
   public static void main(String args[]){  
     //For positive number, >> and >>> works same  
     System.out.println(20>>2);  
     System.out.println(20>>>2);  
     //For negative number, >>> changes parity bit (MSB) to 0  
     System.out.println(-20>>2);  
     System.out.println(-20>>>2);  
  }
}

Kết quả:

5
5
-5
1073741819

4. Ví dụ về toán tử AND trong Java: Logic && và Bitwise &

Toán tử logic và và không kiểm tra điều kiện kèm theo thứ hai nếu điều kiện kèm theo thứ nhất là sai. Nó chỉ kiểm tra điều kiện kèm theo thứ hai nếu điều thứ nhất là đúng .
Toán tử bitwise và toán tử 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

Kết quả :

false
false

Ví dụ về toán tử và toán tử AND trong Java: Logic && so với Bitwise &

class OperatorExample{  
  public static void main(String args[]){  
    int a=10;  
    int b=5;  
    int c=20;  
    System.out.println(a
false
10
false
11

5. Ví dụ về toán tử Java OR: Logic | | Và Bitwise |

Toán tử logic | | trong Java không kiểm tra điều kiện kèm theo thứ hai nếu điều kiện kèm theo thứ nhất là đúng. Nó chỉ kiểm tra điều kiện kèm theo thứ hai nếu cái tiên phong là sai .
Các toán tử bit | 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ử Ternary trong Java

Toán tử Java Ternary được sử dụng như một thay thế sửa chữa cho câu lệnh if-then-other và được sử dụng rất nhiều trong lập trình java. Nó là toán tử có điều kiện kèm theo duy nhất có ba toán hạng .
| | | Toán tử Ternary hay còn được gọi là Toán tử 3 ngôi

Ví dụ về toán tử Ternary

class OperatorExample{  
  public static void main(String args[]){  
    int a=2;
    int b=5;
    int min=(a

Kết quả :

2

Một ví dụ khác vê toán tử Ternary

class OperatorExample{  
  public static void main(String args[]){  
    int a=10;  
    int b=5;  
    int min=(a

Kết quả :

5

7. Toán tử gán trong Java

Toán tử gán Java là một trong những toán tử thông dụng nhất. Nó được sử dụng để gán giá trị ở bên phải của nó cho toán hạng bên trái .

Ví dụ về toán tử gán trong Java

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 trong Java: short

class OperatorExample{  
  public static void main(String args[]){  
    short a=10;  
    short b=10;  
    //a+=b;//a=a+b internally so fine  
    a=a+b;//Compile time error because 10+10=20 now int  
    System.out.println(a);  
  }
}

Kết quả :

Compile time error
class OperatorExample{  
  public static void main(String args[]){  
    short a=10;  
    short b=10;  
    a=(short)(a+b);//20 which is int now converted to short  
    System.out.println(a);  
  }
}  

Kết quả:

20

Lời kết

Trên đây là tổng quan về toán tử trong Java cũng như các ví dụ về toán tử trong Java giúp bạn hiểu rõ hơn về các loại toán tử này.

Qua những bài khác, khi bạn viết chương trình nhiều hơn, những bạn sẽ hiểu cách sử dụng toán tử trong từng trường hợp thực tiễn .

>> Hoặc học kỹ hơn tại: Khóa học Lập trình Java tại NIIT – ICT Hà Nội