Các Toán Tử Trong Java

Các Toán Tử Trong Java

Trong bài viết này, bạn sẽ tìm hiểu về các loại toán tử khác nhau trong ngôn ngữ lập trình JavaToán tử là các ký hiệu đặc biệt (ký tự) thực hiện các phép toán với các số hạng (biến và giá trị).

1. Toán tử số học

Toán tử số học được dùng trong các biểu thức toán học.
Chúng ta có danh sách các toán tử số học

Toán tửÝ nghĩa
+Toán tử cộng (cũng được sử dụng để nối chuỗi)
Toán tử trừ
*Toán tử nhân
/Toán tử chia
%Toán tử lấy phần dư
				
					class ArithmeticOperator {
    public static void main(String[] args) {
    	
    	double number1 = 12.5, number2 = 3.5, result;
    	
    	// Using addition operator
    	result = number1 + number2;
    	System.out.println("number1 + number2 = " + result);
    	
    	// Using subtraction operator
    	result = number1 - number2;
    	System.out.println("number1 - number2 = " + result);
    	
    	// Using multiplication operator
    	result = number1 * number2;
    	System.out.println("number1 * number2 = " + result);

    	// Using division operator
    	result = number1 / number2;
    	System.out.println("number1 / number2 = " + result);
    	
    	// Using remainder operator
    	result = number1 % number2;
    	System.out.println("number1 % number2 = " + result);
    }
}

				
			

Khi bạn chạy chương trình, kết quả sẽ là:

number1 + number2 = 16.0
number1 – number2 = 9.0
number1 * number2 = 43.75
number1 / number2 = 3.5714285714285716
number1 % number2 = 2.0

Toán tử + cũng có thể được sử dụng để nối hai hay nhiều chuỗi.

				
					class ArithmeticOperator {
    public static void main(String[] args) {
    	
    	String start, middle, end, result;
    	
    	start = "Talk is cheap. ";
    	middle = "Show me the code. ";
    	end = "- Linus Torvalds";
    	
    	result = start + middle + end;
    	System.out.println(result);
    }
}
				
			

Khi bạn chạy chương trình, kết quả sẽ là:

Talk is cheap. Show me the code. – Linus Torvalds

2. Toán tử Tăng và Giảm giá trị

The ++ and – – là các toán tử Tăng và Giảm trong Java

Toán tử gia tăng (+): tăng giá trị lên 1

x = x + 1; or x++;

Toán tử giảm; giảm giá trị đi 1

x = x – 1; or x–;

				
					public class IncrementDecrement {
    public static void main(String args[]) {
        int a = 1;
        int b = 2;
        int c;
        int d;
        c = ++b;
        d = a++;
        c++;
        System.out.println("a = " + a);
        System.out.println("b = " + b);
        System.out.println("c = " + c);
        System.out.println("d = " + d);
    }
}
				
			

a = 2
b = 3
c = 4
d = 1

3. Toán tử quan hệ

Các toán tử bằng và toán tử quan hệ xác định mối quan hệ giữa hai số hạng. Nó kiểm tra nếu một số hạng lớn hơn, nhỏ hơn, bằng, không bằng số hạng kia và v.v. Tùy thuộc vào mối quan hệ, nó cho một trong hai kết quả true hoặc false.

Toán tửMô tảThí dụ
==bằng5 == 3 được cho kết quả là false
! =không bằng5! = 3 cho kết quả là true
>lớn hơn5> 3 cho kết quả là true
<bé hơn5 <3 cho kết quả là false
> =lớn hơn hoặc bằng5> = 5 cho kết quả là true
<=bé hơn hoặc bằng5 <= 5 cho kết quả là true
				
					public class Main {

    public static void main(String[] args) {

        int a = 10, b = 5;
        boolean c;

        c = a == b;
        System.out.println("Ket qua phep (==): " + c);

        c = a != b;
        System.out.println("Ket qua phep (-): " + c);

        c = a > b;
        System.out.println("Ket qua phep (*): " + c);

        c = a < b;
        System.out.println("Ket qua phep (/): " + c);

        c = a >= b;
        System.out.println("Ket qua phep (%): " + c);

        c = a <= b;
        System.out.println("Ket qua phep (++): " + c);

    }
}
				
			

Ket qua phep (==): false
Ket qua phep (-): true
Ket qua phep (*): true
Ket qua phep (/): false
Ket qua phep (%): true
Ket qua phep (++): false

4. Toán tử logic

Các toán tử logic || (điều kiện-OR) và && (điều kiện-AND) thao tác với các biểu thức boolean. Dưới đây là cách chúng hoạt động.

Toán tửMô tảThí dụ
| |điều kiện-OR; true nếu một trong các biểu thức boolean là truefalse || true trả về kết quả là true
&&có điều kiện-AND; true nếu tất cả các biểu thức boolean là truefalse && true trả về kết quả false
				
					class LogicalOperator {
    public static void main(String[] args) {
    	
    	int number1 = 1, number2 = 2, number3 = 9;
    	boolean result;
    	
    	// At least one expression needs to be true for result to be true
    	result = (number1 > number2) || (number3 > number1);
    	// result will be true because (number1 > number2) is true
    	System.out.println(result);
    			
    	// All expression must be true from result to be true	
    	result = (number1 > number2) && (number3 > number1);
    	// result will be false because	(number3 > number1) is false
    	System.out.println(result);
    }
}
				
			

Khi bạn chạy chương trình, kết quả sẽ là:

true
false

5. Toán tử Bitwise và Bit Shift

Để thực hiện các toán tử bitwise và bitshift trong Java, ta sử dụng các toán tử sau:

Toán tửMô tả
~Phủ định NOT
<<Dịch trái
>>Dịch phải
>>>Bỏ dịch phải
&Toán tử AND
^Toán tử exclusive OR
|Toán tử OR

6. Các toán tử gán khác

Toán tửThí dụTương đương với
+ =x + = 5x = x + 5
– = =x – = 5x = x – 5
* =x * = 5x = x * 5
/ =x / = 5x = x / 5
% =x% = 5x = x / 5
<< =x << = 5x = x << 5
>> =x >> = 5x = x >> 5
& =x & = 5x = x & 5
^ =x ^ = 5x = x ^ 5
| =x | = 5x = x | 5
				
					public class Main {

    public static void main(String[] args) {

        int a = 10, b = 5;
        int c;

        c = a + b;
        System.out.println("Ket qua phep (=): " + c);

        a = 10; a += b;
        System.out.println("Ket qua phep (+=): " + a);

        a = 10; a -= b;
        System.out.println("Ket qua phep (-=): " + a);

        a = 10; a *= b;
        System.out.println("Ket qua phep (*=): " + a);

        a = 10; a /= b;
        System.out.println("Ket qua phep (/=): " + a);

        a = 10; a %= b;
        System.out.println("Ket qua phep (%=): " + a);

        a = 10; a <<= 2;
        System.out.println("Ket qua phep (<<=): " + a);

        a = 10; a >>= 2;
        System.out.println("Ket qua phep (>>=): " + a);

        a = 10; a >>>= 2;
        System.out.println("Ket qua phep (>>>=): " + a);

        a = 10; a &= b;
        System.out.println("Ket qua phep (&=): " + a);

        a = 10; a ^= b;
        System.out.println("Ket qua phep (^=): " + a);

        a = 10; a |= b;
        System.out.println("Ket qua phep (|=): " + a);
    }
}
				
			

Kết quả sau khi chạy chương trình:

Ket qua phep (=): 15
Ket qua phep (+=): 15
Ket qua phep (-=): 5
Ket qua phep (*=): 50
Ket qua phep (/=): 2
Ket qua phep (%=): 0
Ket qua phep (<<=): 40
Ket qua phep (>>=): 2
Ket qua phep (>>>=): 2
Ket qua phep (&=): 0
Ket qua phep (^=): 15
Ket qua phep (|=): 15