Các Toán Tử Trong JAVA

Các Toán tử Trong JAVA

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 JAVA
Cá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ự khác biệt khi tính toán 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 && không kiểm tra điều kiện thứ hai nếu điều kiện thứ nhất là sai. Nó chỉ kiểm tra điều kiện thứ hai nếu điều thứ nhất là đúng.

Toán tử bitwise & toán tử luôn kiểm tra cả hai điều kiện cho dù điều kiện đầu tiên 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&&a<c);//false && true = false System.out.println(a<b&a<c);//false & true = false } }

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<b&&a++<c);//false && true = false System.out.println(a);//10 Vì ĐK thứ 2 không được kiểm tra System.out.println(a<b&a++<c);//false && true = false System.out.println(a);//11 Vì ĐK thứ 2 được kiểm tra } } 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 thứ hai nếu điều kiện thứ nhất là đúng. Nó chỉ kiểm tra điều kiện thứ hai nếu cái đầu tiên là sai.

Các toán tử bit | luôn kiểm tra cả hai điều kiện cho dù điều kiện đầu tiên 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||a<c);//true || true = true System.out.println(a>b|a<c);//true | true = true //|| vs | System.out.println(a>b||a++<c);//true || true = true System.out.println(a);//10 Vì ĐK thứ 2 không được kiểm tra System.out.println(a>b|a++<c);//true | true = true System.out.println(a);//11 Vì ĐK thứ 2 được kiểm tra } }

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ế 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 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<b)?a:b; System.out.println(min); } }

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<b)?a:b; System.out.println(min); } }

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ử phổ biến 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 các bài khác, khi bạn viết chương trình nhiều hơn, các bạn sẽ hiểu cách sử dụng toán tử trong từng trường hợp thực tế.

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

Từ khóa » Toán Tử Java