Explaining java operators with Precedence and some small examples.
Datatypes defines how to store variables value in stack memory.
Arithmetic Operators are used to mathmetical calculations.
| Operator | Description |
|---|---|
| + | Add Values |
| – | Subtract Values |
| * | Multiply Values |
| / | Divide Values |
| % | Take Modulus of Values |
package com.java_example.tutorial;
public class Operators {
public static void main(String[] args) {
int i=1;
int j=2;
int k=0;
// Addition +
k = i + j;
System.out.println("Addition = "+k);
// Subtraction -
k = i - j;
System.out.println("Subtraction = "+k);
// Multiplication *
k = i * j;
System.out.println("Multiplication = "+k);
// Division /
k = i / j;
System.out.println("Division = "+k);
// Modulus %
k = i % j;
System.out.println("Modulus = "+k);
}
}
Addition = 3
Subtraction = -1
Multiplication = 2
Division = 0
Modulus = 1
Incriment = 3
Decrement = -1
Arithmetic Operators are used to Compare two values.
| Operator | Description |
|---|---|
| == | If Both expression/values are equal it will return true otherwise return False |
| != | If Both expression/values are not equal it will return true otherwise return False |
| > | If First expression/values is Greater than Second it will return true otherwise return False |
| < | If First expression/values is Less than Second it will return true otherwise return Fals |
| >= | If First expression/values is Greater than or equal to Second it will return true otherwise return False |
| <= | If First expression/values is Less than or equal to Second it will return true otherwise return False |
package com.java_example.tutorial;
public class Relational_Operators {
public static void main(String[] args) {
int i=1;
int j=2;
// ==
System.out.println("== = "+( i == j ));
// !=
System.out.println("!= = "+( i != j ));
// >
System.out.println("> = "+( i > j ));
// <
System.out.println("< = "+( i < j ));
// >=
System.out.println(">= = "+( i >= j ));
// <=
System.out.println("<= = "+( i <= j ));
}
}
== = false
!= = true
> = false
< = true
>= = false
<= = true
Used to compare two values.
| Operator | Description |
|---|---|
| && |
And operator will show common part of two expressions. Ex. if both expressions values is True, then result will True. If either expression value is False, result is False. |
| || |
Or operator will show uncommon part of twoexpressions. Ex. if any one or both expressions value is True, result is True. |
| ! | Not operator will show negation of value. Ex. if expressions value is True, result is False and if expressions value is False, result is True. |
package com.java_example.tutorial;
public class Logical_Operators {
public static void main(String[] args) {
int i=1;
int j=2;
boolean result;
// &&
result = ( i < j ) && ( j > i );
System.out.println("&& = "+ result);
result = ( i > j ) && ( j > i );
System.out.println("&& = "+ result);
// ||
result = ( i > j ) || ( i > j );
System.out.println("|| = "+ result);
result = ( i > j ) || ( i < j );
System.out.println("|| = "+ result);
// !
System.out.println("! = "+( i != j ));
}
}
&& = true
&& = false
|| = false
|| = true
! = true
Used to handle binary values.
| Operator | Description |
|---|---|
| >> | Binary Right Shift Operator |
| << | Binary Left Shift Operator |
| ~ | Binary Ones Complement Operator |
| >>> | Shift right zero fill operator |
| & | Binary AND Operator |
| | | Binary OR Operator |
| ^ | Binary XOR Operator |
| Operator | Description |
|---|---|
| = | Assign Second Variable Value to First. |
| += | Increments Second Variable and Then Assign Value to First Variable. |
| -= | Decrements Second Variable and Then Assign Value to First Variable. |
| *= | Multiplies First Variable Value With Second Variable and Then Assign Value to First Variable. |
| /= | Divides First Variable Value With Second Variable and Then Assign Value to First Variable. |
| %= | Modulus First Variable Value With Second Variable and Then Assign Value to First Variable. |
| <<= | Left shift First Variable Value With Second Variable and Then Assign Value to First Variable. |
| >>= | Right shift First Variable Value With Second Variable and Then Assign Value to First Variable. |
| &= | Bitwise First Variable Value With Second Variable and Then Assign Value to First Variable. |
package com.java_example.tutorial;
public class Assignment_Operators {
public static void main(String[] args) {
int i=1;
int j=2;
// Incriment ++
i += j;
// i = i + j; Same output as up line
System.out.println("Incriment = "+i);
i=1;
// Decrement ++
i -= j;
// i = i - j; Same output as up line
System.out.println("Decrement = "+i);
// Like these operators we can use %=,*=,/=,!= ...etc
}
}
Incriment = 3
Decrement = -1
result = value > conditionValue ? result1 : result2
package com.java_example.tutorial;
public class Ternary_Operators {
public static void main(String[] args) {
int i=1;
int j=2;
String result;
// When condition (i < j) is true
result = (i < j) ? "Yes" : "No";
System.out.println("(i < j) = "+result);
// When condition (i > j) is false
result = (i > j) ? "Yes" : "No";
System.out.println("(i > j) = "+result);
}
}
(i < j) = Yes
(i > j) = No
result = value > conditionValue ? result1 : result2
| Operator Precedence | Associativity | Operator Precedence |
| (), [], postfix ++, postfix -- | left | Highest |
| unary +, unary -, prefix ++, prefix --, ~, ! | right | |
| (type), new | left | |
| *, /, % | left | |
| +, - | left | |
| <<, >>, >>> | left | |
| < ,<= , >, >=, instanceof | ||
| ==, != | ||
| & | left | |
| ^ | left | |
| | | left | |
| && | left | |
| || | left | |
| ?: | left | |
| =, +=, -=, *=, /=, %=, <<=, >>=, >>>=, &=, |=, ^= | right | lowest |