Trong hướng dẫn này, bạn sẽ tìm hiểu về các loại toán tử khác nhau trong Java, cú pháp của chúng và cách sử dụng chúng với sự trợ giúp của các ví dụ.
Toán tử là các ký hiệu thực hiện các thao tác trên các biến và giá trị. Ví dụ, +
là một toán tử được sử dụng để cộng, trong khi *
cũng là một toán tử được sử dụng để nhân.
Các toán tử trong Java có thể được phân thành 5 loại:
- Toán tử số học
- Người điều hành nhiệm vụ
- Toán tử quan hệ
- Toán tử logic
- Các nhà khai thác đơn lẻ
- Toán tử Bitwise
1. Các toán tử số học Java
Toán tử số học được sử dụng để thực hiện các phép toán số học trên các biến và dữ liệu. Ví dụ,
a + b;
Ở đây, +
toán tử được sử dụng để thêm hai biến a và b . Tương tự, có nhiều toán tử số học khác trong Java.
Operator | Operation |
+ | Addition |
- | Subtraction |
* | Multiplication |
/ | Division |
% | Modulo Operation (Remainder after division) |
Ví dụ 1: Toán tử số học
class Main {
public static void main(String[] args) {
// declare variables
int a = 12, b = 5;
// addition operator
System.out.println("a + b = " + (a + b));
// subtraction operator
System.out.println("a - b = " + (a - b));
// multiplication operator
System.out.println("a * b = " + (a * b));
// division operator
System.out.println("a / b = " + (a / b));
// modulo operator
System.out.println("a % b = " + (a % b));
}
}
Đầu ra
a + b = 17 a - b = 7 a * b = 60 a / b = 2 a % b = 2
Trong ví dụ trên, chúng tôi đã sử dụng +
, -
và *
các nhà khai thác để tính toán cộng, trừ, và nhân hoạt động.
/ Người điều hành bộ phận
Lưu ý hoạt động, a / b
trong chương trình của chúng tôi. Các /
nhà điều hành là các nhà điều hành bộ phận.
Nếu chúng ta sử dụng toán tử chia với hai số nguyên, thì thương kết quả cũng sẽ là một số nguyên. Và, nếu một trong các toán hạng là số dấu phẩy động, chúng ta sẽ nhận được kết quả cũng sẽ ở dạng dấu phẩy động.
In Java,
(9 / 2) is 4
(9.0 / 2) is 4.5
(9 / 2.0) is 4.5
(9.0 / 2.0) is 4.5
Nhà điều hành% Modulo
Toán tử modulo %
tính phần còn lại. Khi a = 7
chia b = 4
cho thì dư là 3 .
Lưu ý : %
Toán tử chủ yếu được sử dụng với số nguyên.
2. Các toán tử gán Java
Toán tử gán được sử dụng trong Java để gán giá trị cho các biến. Ví dụ,
int age;
age = 5;
Đây, =
là toán tử gán. Nó gán giá trị ở bên phải của nó cho biến ở bên trái của nó. Tức là, 5 được gán cho tuổi biến .
Hãy xem thêm một số toán tử gán có sẵn trong Java.
Operator | Example | Equivalent to |
---|---|---|
= | a = b; | a = b; |
+= | a += b; | a = a + b; |
-= | a -= b; | a = a - b; |
*= | a *= b; | a = a * b; |
/= | a /= b; | a = a / b; |
%= | a %= b; | a = a % b; |
Ví dụ 2: Toán tử chuyển nhượng
class Main {
public static void main(String[] args) {
// create variables
int a = 4;
int var;
// assign value using =
var = a;
System.out.println("var using =: " + var);
// assign value using =+
var += a;
System.out.println("var using +=: " + var);
// assign value using =*
var *= a;
System.out.println("var using *=: " + var);
}
}
Đầu ra
var using =: 4 var using +=: 8 var using *=: 32
3. Các toán tử quan hệ Java
Toán tử quan hệ được sử dụng để kiểm tra mối quan hệ giữa hai toán hạng. Ví dụ,
// check is a is less than b
a < b;
Ở đây, >
operator là toán tử quan hệ. Nó kiểm tra xem a có nhỏ hơn b hay không.
Nó trả về một trong hai true
hoặc false
.
Operator | Decfscription | Example |
---|---|---|
== | Is Equal To | 3 == 5 returns false |
!= | Not Equal To | 3 != 5 returns true |
> | Greater Than | 3 > 5 returns false |
< | Less Than | 3 < 5 returns true |
>= | Greater Than or Equal To | 3 >= 5 returns false |
<= | Less Than or Equal To | 3 <= 5 returns true |
Ví dụ 3: Toán tử quan hệ
class Main {
public static void main(String[] args) {
// create variables
int a = 7, b = 11;
// value of a and b
System.out.println("a is " + a + " and b is " + b);
// == operator
System.out.println(a == b); // false
// != operator
System.out.println(a != b); // true
// > operator
System.out.println(a > b); // false
// < operator
System.out.println(a < b); // true
// >= operator
System.out.println(a >= b); // false
// <= operator
System.out.println(a <= b); // true
}
}
Lưu ý : Các toán tử quan hệ được sử dụng trong việc ra quyết định và các vòng lặp.
4. Toán tử logic Java
Các toán tử logic được sử dụng để kiểm tra xem một biểu thức có phải là true
hay không false
. Chúng được sử dụng trong việc ra quyết định.
Operator | Example | Meaning |
---|---|---|
&& (Logical AND) | expression1 && expression2 | true only if both expression1 and expression2 are true |
|| (Logical OR) | expression1 || expression2 | true if either expression1 or expression2 is true |
! (Logical NOT) | !expression | true if expression is false and vice versa |
Ví dụ 4: Toán tử lôgic
class Main {
public static void main(String[] args) {
// && operator
System.out.println((5 > 3) && (8 > 5)); // true
System.out.println((5 > 3) && (8 < 5)); // false
// || operator
System.out.println((5 < 3) || (8 > 5)); // true
System.out.println((5 > 3) || (8 < 5)); // true
System.out.println((5 < 3) || (8 < 5)); // false
// ! operator
System.out.println(!(5 == 3)); // true
System.out.println(!(5 > 3)); // false
}
}
Hoạt động của chương trình
(5 > 3) && (8 > 5)
returnstrue
because both(5 > 3)
and(8 > 5)
aretrue
.(5 > 3) && (8 < 5)
returnsfalse
because the expression(8 < 5)
isfalse
.(5 < 3) || (8 > 5)
returnstrue
because the expression(8 > 5)
istrue
.(5 > 3) && (8 > 5)
returnstrue
because the expression(5 > 3)
istrue
.(5 > 3) && (8 > 5)
returnsfalse
because both(5 < 3)
and(8 < 5)
arefalse
.!(5 == 3)
returns true because5 == 3
isfalse
.!(5 > 3)
returns false because5 > 3
istrue
.
5. Các toán tử đơn nguyên của Java
Toán tử một ngôi chỉ được sử dụng với một toán hạng. Ví dụ, ++
là một toán tử một ngôi làm tăng giá trị của một biến lên 1 . Đó là, ++5
sẽ trả về 6 .
Các loại toán tử đơn phân khác nhau là:
Operator | Meaning |
---|---|
+ | Unary plus: not necessary to use since numbers are positive without using it |
- | Unary minus: inverts the sign of an expression |
++ | Increment operator: increments value by 1 |
-- | Decrement operator: decrements value by 1 |
! | Logical complement operator: inverts the value of a boolean |
Các toán tử gia tăng và giảm dần
Java cũng cung cấp các toán tử tăng và giảm: ++
và --
tương ứng. ++
tăng giá trị của toán hạng lên 1 , trong khi --
giảm giá trị của nó đi 1 . Ví dụ,
int num = 5;
// increase num by 1
++num;
Ở đây, giá trị của num được tăng lên 6 từ giá trị ban đầu của nó là 5 .
Ví dụ 5: Các toán tử tăng dần và giảm dần
class Main {
public static void main(String[] args) {
// declare variables
int a = 12, b = 12;
int result1, result2;
// original value
System.out.println("Value of a: " + a);
// increment operator
result1 = ++a;
System.out.println("After increment: " + result1);
System.out.println("Value of b: " + b);
// decrement operator
result2 = --b;
System.out.println("After decrement: " + result2);
}
}
Đầu ra
Value of a: 12 After increment: 13 Value of b: 12 After decrement: 11
Trong chương trình trên, chúng ta đã sử dụng toán tử ++ và – làm tiền tố (++ a, –b) . Chúng ta cũng có thể sử dụng các toán tử này làm hậu tố (a ++, b ++) .
Có một sự khác biệt nhỏ khi các toán tử này được sử dụng làm tiền tố so với khi chúng được sử dụng như một hậu tố.
Để tìm hiểu thêm về các toán tử này, hãy truy cập các toán tử tăng và giảm .
6. Toán tử Java Bitwise
Toán tử bitwise trong Java được sử dụng để thực hiện các hoạt động trên các bit riêng lẻ. Ví dụ,
Bitwise complement Operation of 35
35 = 00100011 (In Binary)
~ 00100011
________
11011100 = 220 (In decimal)
Đây, ~
là một toán tử bitwise. Nó đảo ngược giá trị của từng bit ( 0 thành 1 và 1 thành 0 ).
Các toán tử bitwise khác nhau có trong Java là:
Operator | Decfscription |
---|---|
~ | Bitwise Complement |
<< | Left Shift |
>> | Right Shift |
>>> | Unsigned Right Shift |
& | Bitwise AND |
^ | Bitwise exclusive OR |
Các toán tử này thường không được sử dụng trong Java. Để tìm hiểu thêm, hãy truy cập Các toán tử Java Bitwise và Bit Shift .
Các nhà khai thác khác
Bên cạnh các toán tử này, còn có các toán tử bổ sung khác trong Java.
Toán tử instanceof của Java
Các instanceof
kiểm tra hành dù một đối tượng là một instanceof một lớp học đặc biệt. Ví dụ,
class Main {
public static void main(String[] args) {
String str = "Programiz";
boolean result;
// checks if str is an instance of
// the String class
result = str instanceof String;
System.out.println("Is str an object of String? " + result);
}
}
Đầu ra
Is str an object of String? true
Ở đây, str là một thể hiện của String
lớp. Do đó, instanceof
toán tử trả về true
. Để tìm hiểu thêm, hãy truy cập Java instanceof .
Toán tử bậc ba của Java
Toán tử bậc ba (toán tử điều kiện) là viết tắt của if-then-else
câu lệnh. Ví dụ,
variable = Expression ? expression1 : expression2
Đây là cách nó hoạt động.
- If the
Expression
istrue
,expression1
is assigned to the variable. - If the
Expression
isfalse
,expression2
is assigned to the variable.
Hãy xem một ví dụ về toán tử bậc ba.
class Java {
public static void main(String[] args) {
int februaryDays = 29;
String result;
// ternary operator
result = (februaryDays == 28) ? "Not a leap year" : "Leap year";
System.out.println(result);
}
}
Đầu ra
Leap year
Trong ví dụ trên, chúng ta đã sử dụng toán tử bậc ba để kiểm tra xem năm đó có phải là năm nhuận hay không. Để tìm hiểu thêm, hãy truy cập toán tử bậc ba của Java .
Bây giờ bạn đã biết về các toán tử Java, đã đến lúc biết về thứ tự mà các toán tử được đánh giá. Để tìm hiểu thêm, hãy truy cập Java Operator Precedence .