在Java中,运算符是用于执行各种操作的符号。它们允许对变量和值进行计算、比较和操作。

以下是Java中常见的运算符类型:

  • 一元运算符:用于对单个操作数进行操作,例如递增(++)和递减(--)运算符。
  • 算术运算符:用于执行基本算术操作,如加法(+)、减法(-)、乘法(*)、除法(/)和取模(%)。
  • 移位运算符:用于在二进制位级别上进行移位操作,包括左移(<<)、右移(>>)和无符号右移(>>>)。
  • 关系运算符:用于比较两个值之间的关系,如等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)和小于等于(<=)。
  • 按位运算符:用于在二进制位级别上进行操作,如按位与(&)、按位或(|)、按位异或(^)和按位取反(~)。
  • 逻辑运算符:用于组合和操作布尔值,如逻辑与(&&)、逻辑或(||)和逻辑非(!)。
  • 三元运算符:也称为条件运算符,用于根据条件选择不同的值,例如条件表达式 ? 值1 : 值2。
  • 赋值运算符:用于将值赋给变量,例如赋值(=)、加等于(+=)、减等于(-=)等。

通过使用这些运算符,我们可以执行各种计算和操作,以实现程序的逻辑和功能需求。

Java 运算符优先级

运营商类型类别优先级
一元后缀*expr*++ *expr*--
字首++*expr* --*expr* +*expr* -*expr* ~ !
算术乘法的* / %
添加剂+ -
转移转移<< >> >>>
关系型比较< > <= >= instanceof
平等== !=
按位按位与&
按位异或^
按位包含或``
合乎逻辑逻辑与&&
逻辑或``
三元三元的? :
任务任务`= += -= *= /= %= &= ^== <<= >>= >>>=`

Java 一元运算符

Java 一元运算符只需要一个操作数。一元运算符用于执行各种操作,即:

  • 将值递增/递减 1
  • 否定一个表达式
  • 反转布尔值

Java 一元运算符示例:++ 和 --

public class OperatorExample{  
public static void main(String args[]){  
int x=10;  
System.out.println(x++);//10 (11)  
System.out.println(++x);//12  
System.out.println(x--);//12 (11)  
System.out.println(--x);//10  
}}  

输出:

10
12
12
10

Java 一元运算符示例 2:++ 和 --

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=10;  
System.out.println(a++ + ++a);//10+12=22  
System.out.println(b++ + b++);//10+11=21  
}}  

输出:

22
21

Java 一元运算符示例:~ 和 !

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=-10;  
boolean c=true;  
boolean d=false;  
System.out.println(~a);//-11(减去从 0 开始的总正值)
System.out.println(~b);//9(总负数的正数,正数从0开始)
System.out.println(!c); //false(与布尔值相反)  
System.out.println(!d);//真的 
}}  

输出:

-11
9
false
true

Java 算术运算符

Java 算术运算符用于执行加法、减法、乘法和除法。它们充当基本的数学运算。

Java 算术运算符示例

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=5;  
System.out.println(a+b);//15  
System.out.println(a-b);//5  
System.out.println(a*b);//50  
System.out.println(a/b);//2  
System.out.println(a%b);//0  
}}  

输出:

15
5
50
2
0

Java 算术运算符示例:表达式

public class OperatorExample{  
public static void main(String args[]){  
System.out.println(10*10/5+3-1*4/2);  
}}  

输出:

21

Java 左移运算符

Java 左移运算符 << 用于将值中的所有位向左移动指定次数。

Java 左移运算符示例

public class OperatorExample{  
public static void main(String args[]){  
System.out.println(10<<2);//10*2^2=10*4=40  
System.out.println(10<<3);//10*2^3=10*8=80  
System.out.println(20<<2);//20*2^2=20*4=80  
System.out.println(15<<4);//15*2^4=15*16=240  
}}  

输出:

40
80
80
240

Java 右移运算符

Java 右移运算符 >> 用于将左操作数的值向右移动右操作数指定的位数。

Java 右移运算符示例

public OperatorExample{  
public static void main(String args[]){  
System.out.println(10>>2);//10/2^2=10/4=2  
System.out.println(20>>2);//20/2^2=20/4=5  
System.out.println(20>>3);//20/2^3=20/8=2  
}}  

输出:

2
5
2

Java 移位运算符示例:>> 与 >>>

public class OperatorExample{  
public static void main(String args[]){  
    //对于正数,>>和>>>工作相同 
    System.out.println(20>>2);  
    System.out.println(20>>>2);  
    //对于负数,>>> 将奇偶校验位 (MSB) 更改为 0   
    System.out.println(-20>>2);  
    System.out.println(-20>>>2);  
}}  

输出:

5
5
-5
1073741819

Java AND 运算符示例:逻辑 && 和按位 &

如果第一个条件为假,逻辑 && 运算符不会检查第二个条件。仅当第一个条件为真时,它才会检查第二个条件。

按位 & 运算符总是检查两个条件,无论第一个条件是真还是假。

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=5;  
int c=20;  
System.out.println(a<b&&a<c);//false && true = false  
System.out.println(a<b&a<c);//false & true = false  
}}  

输出:

false
false

Java AND 运算符示例:逻辑 && 与按位 &

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=5;  
int c=20;  
System.out.println(a<b&&a++<c);//false && true = false  
System.out.println(a);//10 因为没有检查第二个条件
System.out.println(a<b&a++<c);//false && true = false  
System.out.println(a); //11 因为检查了第二个条件   
}}  

输出:

false
10
false
11

Java OR 运算符示例:逻辑 || 和按位|

合乎逻辑的 || 如果第一个条件为真,运算符不会检查第二个条件。只有当第一个条件为假时,它才会检查第二个条件。

按位 | 运算符总是检查两个条件,无论第一个条件是真还是假。

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=5;  
int c=20;  
System.out.println(a>b||a<c);//true || true = true  
System.out.println(a>b|a<c);//true | true = true  
//|| vs |  
System.out.println(a>b||a++<c);//true || true = true  
System.out.println(a);//10 因为没有检查第二个条件
System.out.println(a>b|a++<c);//true | true = true  
System.out.println(a);//11 因为检查了第二个条件  
}}  

输出:

true
true
true
10
true
11

Java 三元运算符

Java 三元运算符用作 if-then-else 语句的一行替换,在 Java 编程中使用很多。它是唯一接受三个操作数的条件运算符。

Java 三元运算符示例

public class OperatorExample{  
public static void main(String args[]){  
int a=2;  
int b=5;  
int min=(a<b)?a:b;  
System.out.println(min);  
}}  

输出:

2

另一个例子:

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=5;  
int min=(a<b)?a:b;  
System.out.println(min);  
}}  

输出:

5

Java 赋值运算符

Java赋值运算符是最常见的运算符之一。它用于将其右侧的值分配给其左侧的操作数。

Java 赋值运算符示例

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=20;  
a+=4;//a=a+4 (a=10+4)  
b-=4;//b=b-4 (b=20-4)  
System.out.println(a);  
System.out.println(b);  
}}  

输出:

14
16

Java 赋值运算符示例

public class OperatorExample{  
public static void main(String[] args){  
int a=10;  
a+=3;//10+3  
System.out.println(a);  
a-=4;//13-4  
System.out.println(a);  
a*=2;//9*2  
System.out.println(a);  
a/=2;//18/2  
System.out.println(a);  
}}  

输出:

13
9
18
9

Java 赋值运算符示例:添加 short

public class OperatorExample{  
public static void main(String args[]){  
short a=10;  
short b=10;  
//a+=b;//a=a+b internally so fine  
a=a+b;//编译时错误,因为 10+10=20 现在是 int   
System.out.println(a);  
}}  

输出:

Compile time error//编译时错误

类型转换后:

public class OperatorExample{  
public static void main(String args[]){  
short a=10;  
short b=10;  
a=(short)(a+b);//20 这是 int 现在转换为 short 
System.out.println(a);  
}}  

输出:

20

标签: java, Java面试题, Java下载, java教程, java技术, Java学习, Java学习教程, Java语言, Java开发, Java入门教程, Java进阶教程, Java高级教程, Java笔试题, Java编程思想