The operators in Java programming act as potent instruments for data manipulation and control flow are its heart and soul. Operators in Java are being used as a symbol that performs various operations according to the code. Some Operators of JAVA are "+","-","*","/" etc. The idea of using Operators has been taken from other languages so that it behaves expectedly. Java operators are also responsible for key functions like security encryption.

**Types of Java Operators:**

1. Unary Operators

2. Arithmetic Operators

3. Assignment Operators

4. Logical Operators

5. Shift Operators

6. Bitwise Operators

7. Ternary Operators

8. Relational Operators

**1. Unary Operators:** Unary operators need only one operand. They are used to increment, decrement, or negate a value.

**– : Unary minus**: used for negating the values.**+ : Unary plus**: indicates the positive value (numbers are positive without this, however). It performs an automatic conversion to int when the type of its operand is the byte, char, or short. This is called unary numeric promotion.**++ : Increment operator**: used for incrementing the value by 1. There are two varieties of increment operators.**Post-Increment:**Value is first used for computing the result and then incremented.**Pre-Increment:**Value is incremented first, and then the result is computed.**– – : Decrement operator**: used for decrementing the value by 1. There are two varieties of decrement operators.**Post-decrement:**Value is first used for computing the result and then decremented.**Pre-Decrement: The value**is decremented first, and then the result is computed.**! : Logical not operator**: used for inverting a Boolean value.

**2. Arithmetic Operator****: **Arithmetic operators are used to performing addition, subtraction, multiplication, division, and modulus. It acts as a mathematical operations.

*** :**Multiplication**/ :**Division**% :**Modulo**+ :**Addition**– :**Subtraction

**3. Assignment Operators: ****‘=’** Assignment operator is used to assign a value to any variable. It has right-to-left associativity, i.e. value given on the right-hand side of the operator is assigned to the variable on the left, and therefore right-hand side value must be declared before using it or should be a constant.

In many cases, the assignment operator can be combined with other operators to build a shorter version of the statement called a **Compound Statement**. For example, instead of a **=** a+5, we can write a **+=** 5.

**+=**, for adding the left operand with the right operand and then assigning it to the variable on the left.**-=**, for subtracting the right operand from the left operand and then assigning it to the variable on the left.***=**, for multiplying the left operand with the right operand and then assigning it to the variable on the left.**/=**, for dividing the left operand by the right operand and then assigning it to the variable on the left.**%=**, for assigning the modulo of the left operand by the right operand and then assigning it to the variable on the left.

**4. Logical Operators:** These operators are used to perform “logical AND” and “logical OR” operations, i.e., a function similar to AND gate and OR gate in digital electronics. One thing to keep in mind is the second condition is not evaluated if the first one is false, i.e., it has a short-circuiting effect. Used extensively to test for several conditions for making a decision. Java also has “Logical NOT”, which returns true when the condition is false and vice-versa

Conditional operators are:

**&&, Logical AND:**returns true when both conditions are true.**||, Logical OR:**returns true if at least one condition is true.**!, Logical NOT:**returns true when a condition is false and vice-versa

**5. Shift Operators:** These operators are used to shift the bits of a number left or right, thereby multiplying or dividing the number by two, respectively.

**<<, Left shift operator:**shifts the bits of the number to the left and fills 0 on voids left as a result. Similar effect as multiplying the number with some power of two.**>>, Signed Right shift operator:**shifts the bits of the number to the right and fills 0 on voids left as a result. The leftmost bit depends on the sign of the initial number. Similar effect to dividing the number with some power of two.**>>>, Unsigned Right shift operator:**shifts the bits of the number to the right and fills 0 on voids left as a result. The leftmost bit is set to 0.

**6. Bitwise Operators: **These operators are used to perform the manipulation of individual bits of a number. They can be used with any of the integer types. They are used when performing update and query operations of the Binary indexed trees.

**&, Bitwise AND operator:**returns bit by bit AND of input values.**|, Bitwise OR operator:**returns bit by bit OR of input values.**^, Bitwise XOR operator:**returns bit-by-bit XOR of input values.**~, Bitwise Complement Operator:**This is a unary operator which returns the one’s complement representation of the input value, i.e., with all bits inverted.

**7. Ternary Operators: **The ternary operator is a shorthand version of the if-else statement. It has three operands and hence the name Ternary. The ternary operator in Java is conditional. These Java operators can help minimize the line of code while making comparisons.

**8. Relational Operators:** These operators are used to check for relations like equality, greater than, and less than. They return Boolean results after the comparison and are extensively used in looping statements as well as conditional if-else statements.

**==, Equal to**returns true if the left-hand side is equal to the right-hand side.**!=, Not Equal to**returns true if the left-hand side is not equal to the right-hand side.**<, less than:**returns true if the left-hand side is less than the right-hand side.**<=, less than or equal to**returns true if the left-hand side is less than or equal to the right-hand side.**>, Greater than:**returns true if the left-hand side is greater than the right-hand side.**>=, Greater than or equal to**returns true if the left-hand side is greater than or equal to the right-hand side.

**Conclusion**

Operators in Java play a crucial role in performing several data operations. Every type of Java operator has its own specific set of functions. Some Java operators are used more frequently than others. But every operator in Java is used when the need arises.

## Comments