В този урок ще научите за различни видове оператори в Java, техния синтаксис и как да ги използвате с помощта на примери.
Операторите са символи, които извършват операции върху променливи и стойности. Например, +
е *
оператор, използван за събиране , докато е и оператор, използван за умножение.
Операторите в Java могат да бъдат класифицирани в 5 типа:
- Аритметични оператори
- Оператори за присвояване
- Релационни оператори
- Логически оператори
- Унарни оператори
- Побитови оператори
1. Java аритметични оператори
Аритметичните оператори се използват за извършване на аритметични операции върху променливи и данни. Например,
a + b;
Тук +
операторът се използва за добавяне на две променливи a и b. По същия начин в Java има различни други аритметични оператори.
Оператор | Операция |
+ | Събиране |
- | Изваждане |
* | Умножение |
/ | Дивизия |
% | Операция по модул (остатък след разделяне) |
Пример 1: Аритметични оператори
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)); ) )
Изход
a + b = 17 a - b = 7 a * b = 60 a / b = 2 a% b = 2
В горния пример използвахме +
, -
и *
оператори, за да изчислим операции по събиране, изваждане и умножение.
/ Оператор на дивизия
Обърнете внимание на операцията a / b
в нашата програма. На /
оператора е операторът на разделение.
Ако използваме оператора за разделяне с две цели числа, тогава полученият коефициент също ще бъде цяло число. И ако един от операндите е число с плаваща запетая, ще получим, че резултатът също ще бъде в плаваща запетая.
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
% Modulo Оператор
Операторът по модул %
изчислява остатъка. Когато a = 7
се дели на b = 4
, остатъкът е 3 .
Забележка : %
Операторът се използва главно с цели числа.
2. Оператори за присвояване на Java
Операторите на присвояване се използват в Java за присвояване на стойности на променливи. Например,
int age; age = 5;
Тук =
е операторът за присвояване. Той присвоява стойността отдясно на променливата отляво. Тоест, 5 се присвоява на променливата възраст.
Нека да видим още някои оператори за присвояване, налични в Java.
Оператор | Пример | Еквивалентно на |
---|---|---|
= | 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; |
Пример 2: Оператори за присвояване
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); ) )
Изход
var using =: 4 var using + =: 8 var using * =: 32
3. Релационни оператори на Java
Релационните оператори се използват за проверка на връзката между два операнда. Например,
// check is a is less than b a < b;
Тук >
операторът е релационният оператор. Проверява дали a е по-малко от b или не.
Връща или true
или false
.
Оператор | Описание | Пример |
---|---|---|
== | Е равно на | 3 == 5 връща false |
!= | Не е равно на | 3 != 5 връща true |
> | По-голяма от | 3> 5 връща false |
< | По-малко от | 3 < 5 връща true |
>= | По - голямо или равно на | 3>= 5 връща false |
<= | По-малко или равно на | 3 <= 5 връща false |
Пример 3: Релационни оператори
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 = operator System.out.println(a>= b); // false // <= operator System.out.println(a <= b); // true ) )
Забележка : Релационните оператори се използват при вземането на решения и цикли.
4. Логически оператори на Java
Логическите оператори се използват за проверка дали изразът е true
или false
. Те се използват при вземането на решения.
Оператор | Пример | Значение |
---|---|---|
&& (Логично И) | 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 |
Example 4: Logical Operators
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 5)); // true System.out.println((5> 3) || (8 < 5)); // true System.out.println((5 < 3) || (8 3)); // false ) )
Working of Program
(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. Java Unary Operators
Unary operators are used with only one operand. For example, ++
is a unary operator that increases the value of a variable by 1. That is, ++5
will return 6.
Different types of unary operators are:
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 |
Increment and Decrement Operators
Java also provides increment and decrement operators: ++
and --
respectively. ++
increases the value of the operand by 1, while --
decrease it by 1. For example,
int num = 5; // increase num by 1 ++num;
Here, the value of num gets increased to 6 from its initial value of 5.
Example 5: Increment and Decrement Operators
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); ) )
Output
Value of a: 12 After increment: 13 Value of b: 12 After decrement: 11
In the above program, we have used the ++ and -- operator as prefixes (++a, --b). We can also use these operators as postfix (a++, b++).
There is a slight difference when these operators are used as prefix versus when they are used as a postfix.
To learn more about these operators, visit increment and decrement operators.
6. Java Bitwise Operators
Bitwise operators in Java are used to perform operations on individual bits. For example,
Bitwise complement Operation of 35 35 = 00100011 (In Binary) ~ 00100011 ________ 11011100 = 220 (In decimal)
Here, ~
is a bitwise operator. It inverts the value of each bit (0 to 1 and 1 to 0).
The various bitwise operators present in Java are:
Operator | Description |
---|---|
~ | Bitwise Complement |
<< | Left Shift |
>> | Right Shift |
>>> | Unsigned Right Shift |
& | Bitwise AND |
^ | Bitwise exclusive OR |
These operators are not generally used in Java. To learn more, visit Java Bitwise and Bit Shift Operators.
Other operators
Besides these operators, there are other additional operators in Java.
Java instanceof Operator
The instanceof
operator checks whether an object is an instanceof a particular class. For example,
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); ) )
Output
Is str an object of String? true
Here, str is an instance of the String
class. Hence, the instanceof
operator returns true
. To learn more, visit Java instanceof.
Java Ternary Operator
The ternary operator (conditional operator) is shorthand for the if-then-else
statement. For example,
variable = Expression ? expression1 : expression2
Here's how it works.
- If the
Expression
istrue
,expression1
is assigned to the variable. - If the
Expression
isfalse
,expression2
is assigned to the variable.
Let's see an example of a ternary operator.
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); ) )
Output
Leap year
In the above example, we have used the ternary operator to check if the year is a leap year or not. To learn more, visit the Java ternary operator.
След като вече знаете за Java операторите, е време да научите за реда, в който се оценяват операторите. За да научите повече, посетете Java Operator Precedence.