# Java – Operator & Expression6 min read

Operators are used to perform operations on variables and values or to manipulate them. The operation is performed with two operand and operators to provide what action need to perform.

Example:

In the above example, 10 and 5 are operands and + is the operation performed between these two operands.

### Java provides numbers of operation and these are grouped into the following:

• Arithmetic Operators
• Assignment Operators
• Increment and Decrement Operators
• Logical Operators
• Relational (comparison) operators
• Bitwise Operators
• Ternary Operator

## 1. Arithmetic Operators:

They are used to perform basic arithmetic operations. They perform on primitive data types.
They are:

* : Multiplication
Multiplies two values
Example: `x * y;`

/ : Division
Divides one value from another
Example: `x / y;`

% : Modulo
Returns the division remainder
Example: `x % y; `

Example: `x + y;`

– : Subtraction
Subtracts one value from another
Example: `x - y;`

## 2. Assignment Operators:

The assignment operator is used to assigning a value to any variable. This operator assigns the value of the right-hand side of an operator to the left-hand side. Various assignment operator in Java:

These are the short version formed by combining the two operators.

For example Instead of writing, `int a = a+3`, we can write `a+= 5`.

• Assignment operator: ‘=’ This operator assigns the value on the right to the variable on the left.
`a = 20; B = 30; Ch = 'cha';`
• Add AND assignment operator: ‘+=’ This operator first adds the current value of the variable on the left to the value on the right and then assigns the result to the variable on the left.
`c+=7; a+=b;`
• Subtract AND assignment operator: ‘-=’ This operator first subtracts the current value of the variable on the left from the value on the right and then assigns the result to the variable on the left.
`c-=7; a-=b;`
• Multiply AND assignment operator: ‘*=’ This operator first multiplies the current value of the variable on the left to the value on the right and then assigns the result to the variable on the left.
`c*=7; a*=b;`
• Divide AND assignment operator: ‘/=’ This operator first divides the current value of the variable on the left by the value on the right and then assigns the result to the variable on the left.
`c/=7; a/=b;`
• Modulus AND assignment operator: ‘%=’ It takes modulus using two operands and assigns the result to the left operand.
`C %= A is equivalent to C = C % A ;`
• Right shift AND assignment operator: ‘>>=’ This operator is used for Right shift Operation.
`C >>= 2 ;`
• Left shift AND assignment operator: ‘<<=’ This operator is used for Left shift Operation.
`C <<= 2 ;`
• Bitwise AND assignment operator: ‘&=’ This operator is used for Bitwise AND Operations.
`C &= 2;`
• Bitwise exclusive OR and assignment operator: ‘^=’ This operator is used for Bitwise exclusive OR Operations.
`C ^= 2;`
• Bitwise inclusive OR and assignment operator: ‘|=’ This operator is used for Bitwise inclusive OR.
`C |= 2;`

## 3. Increment and Decrement Operators:

The ++ and the – – are Java’s increment and decrement operators. ++ is used to increase the value by 1 and — is used to decrease the value by 1. There are two kinds of Increment and Decrement Operators.

They are:

• Post-Increment or Post-Decrement:
First, the value is used for operation and then incremented or decremented. Represented like a++ or a–.
• Pre-Increment Pre-Decrement:
Here First the value is incremented or decremented then used for the operation. Represented like ++a or –a.

## 4. Logical Operators:

Logical Operators are used in conditional statements and loops for evaluating a condition with binary values. All of the binary logical operators combine two boolean values that are true and false to form a result value.

## 5. Relational (comparison) operators:

Comparison operators are used to comparing two values and return boolean results. These operators are used to check for relations like equality, greater than, less than between two values. They are used with a loop statement and also with if-else statements.

## 6. Bitwise operators:

Bitwise operator works on bits and performs a bit-by-bit operation. There are six Bitwise Operators and can be applied to the integer types, long, int, short, char, and byte.

• Bitwise AND: ‘&’
Binary AND Operator copies a bit to the result if it exists in both operands.
• Bitwise OR: ‘|’
Binary OR Operator copies a bit if it exists in either operand.
• Bitwise XOR: ‘^’
Binary XOR Operator copies the bit if it is set in one operand but not both.
• Binary Left Shift: ‘<<’
The left operands value is moved left by the number of bits specified by the right operand.
• Binary Right Shift: ‘>>’
The left operand’s value is moved right by the number of bits specified by the right operand.
• Bitwise complement: ‘~’
Binary Ones Complement Operator is unary and has the effect of ‘flipping’ bits.
• zero-fill right shift: ‘>>>’
The left operands value is moved right by the number of bits specified by the right operand and shifted values are filled up with zeros.

## 7. Ternary operators:

Ternary Operator is also known as the Conditional operator. It is used to evaluate Boolean expressions. We can say that it is a short version of the if-else statement. But here instead of operating on to operand, it operates on three operands, and therefore the name ternary.

Syntax:

`variable num1 = (expression) ? value if true : value if false;`

## What are Precedence and Associativity?

Precedence and Associativity are the rules that are used to determine the operators with the highest priority in evaluating an equation that contains different operations.

For example:

In this example, x is assigned as 20, not 30 that’s because operator * has higher precedence than +, and hence it first gets multiplied (5*2) and then the multiplied value is added to 10.

### String Pattern Programs in C

In this tutorial, we will write various C pattern programs for String. Before that, you may go through the following topics in C. for loop …

### Java Program to Find pair of Integers in Array whose sum is given Number

In this tutorial, we will write a program to find a pair of elements from an array whose sum equals a given number in java …

### Program to Print Diamond Alphabet Patterns in C

In this tutorial, we will learn to write a C program to print Diamond patterns using alphabets/characters. However, in this tutorial, we will create a …

### Half Diamond Pattern in C using Alphabets

In this tutorial, we will learn and code the half diamond alphabet patterns in C programming language. However, in this tutorial, we will create a …

### Half Pyramid of Alphabets in C

In this tutorial, we will learn and code alphabet patterns in C programming language specifically the Half pyramid of alphabets in C programming. However, in …

### Inverted Half Pyramid Pattern of Alphabets in C

In this tutorial, we will write a C program to print half Pyramid using alphabets/characters. Before that, you may go through the following topic in …