Java 运算符总结

本文介绍了Java语言中的各种运算符,包括算术运算符、关系运算符、赋值运算符、逻辑运算符以及其他特殊运算符如三目运算符和instanceof。详细解释了每个运算符的用法和示例,如自增、自减、与(&)、或(|)、异或(^)等,并提到了运算符的优先级。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开发工具与关键技术:Myeclipse 10,Java
作者:刘俊杰
撰写时间:2019年04月30日

Java语言支持如下运算符:
算术运算符:+、-、、/、%、++、–
关系运算符:>,<,>=,<=,==,!=
赋值运算符:=、+=、-=、
=、/=
逻辑运算符:&&,||,!,&,|,^,~
其他运算符:instanceof,?:

一、算术运算符
操作符 描述

+      加法 ­ 相加运算符两侧的值
­-      减法 ­ 左操作数减去右操作数
*      乘法 ­ 相乘操作符两侧的值
/      除法 ­ 左操作数除以右操作数
%     取余 ­ 左操作数除以右操作数的余数
++     自增: 操作数的值增加1
­­--	   自减: 操作数的值减少

示例:
int i = 10;
int j = 5;
// + 加
int f = i + j;//结果:15
// - 减
int g = i - j;//结果:5
// * 乘
int h = i * j;//结果:50
// / 除
int k = i / j;//结果:5

注意:自增(自减)在前面和后面的区别:
++y(–y):先将y的值自增(自减)1,然后再在当前表达式中使用y的值
y++(y–):先在当前表达式中使用y的值,然后再将y的值自增(自减)1。
示例:
//++ 自加 :单目运算符
int A = 20;
int B = 20;
System.out.println(++A);//结果:21
System.out.println(B++);//结果:20
//–自减 :单目运算符
int C = 20;
int D = 20;
System.out.println(–C);//结果:19
System.out.println(D–);//结果:20

二、关系运算符
运算符 描述

>     大于
>=    大于等于
<     小于
<=    小于等于
==    等于
!=    不等于

三、逻辑运算符
运算符 含义
&& 与,前后两个数为true时才返回true,否则返回false
& 不短路与,作用与&&相同,但不会短路
|| 称为逻辑或操作符。如果任何两个操作数任何一个为真,条件为真
| 不短路或,作用与
^ 异或,当两个操作符不同时才返回true,相同返回flase
! 称为逻辑非运算符。用来反转操作数的逻辑状态

四、赋值运算符
操作符 描述
= 简单的赋值运算符,将右操作数的值赋给左侧操作数
+= 加和赋值操作符,它把左操作数和右操作数相加赋值给左操作数
-= 减和赋值操作符,它把左操作数和右操作数相减赋值给左操作数
*= 乘和赋值操作符,它把左操作数和右操作数相乘赋值给左操作数
/= 除和赋值操作符,它把左操作数和右操作数相除赋值给左操作数
%= 取余和赋值操作符,它把左操作数和右操作数取余后赋值给左操作数
示例:

int int1 = 10;
int int2 = 5;
int int3 = int1+=int2;//+=结果:15
int int4 = int1-=int2;//-=结果:10
int int5 = int1*=int2;//*=结果:50
int int6 = int1/=int2;///=结果:10
int int7 = int1%=int2;//%=结果:0

PS:使用赋值运算时,上面定义的int1、int2也会跟着赋值运算后改变数值,所以+=后面-=的结果等于10;

五、其他运算符
1、三目运算符(?:)
三目运算符也被称为三元运算符。该运算符有3个操作数,并且需要判断布尔表达式值。该运算符的主要是决定哪个值应该赋值给变量。
语法格式:
x ? y : z
执行过程
其中x为boolean类型表达式,先计算x的值,若为true,则整个三目运算的结果为表达式y的值,否则整个运算结果为表达式z的值
经常用来代替简单的if-else判断!
示例:

int i = 5;
int j = (i > 4) ? 1 : 2;
System.out.println(j);//结果:1
System.out.println((i > 4) ? true : false);//结果true

2、instanceof运算符
该运算符用于操作对象实例,检查该对象是否是一个特定类型(类类型或接口类型)。
格式:
(Object reference variable) instanceof (class/interface type)
示例:
//判断str是否为String类型

String str = "Name";
boolean bool = str instanceof String;
System.out.println(bool); //结果true

注意:Java中==和equals()方法的区别
==在基本数据类型的时候就是比较值是否相同,在引用类型时是比较地址
equals用于判断引用类型的值

运算符的优先级:
赋值 < 三目 < 逻辑 < 关系 < 算术 < 单目

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值