JAVA学习笔记(二)运算符

本文详细讲解了Java中的算术运算符,包括除法/和%的区别,字符+操作,字符串拼接,赋值运算符,自增自减,关系运算符,逻辑运算,以及短路与或。通过实例演示了这些运算符的用法和注意事项。

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

算术运算符注意事项

除法:/和%的区别:两个数据做除法,/取得商,%取得余数。整数操作只得到整数,要想得到小数,必须有浮点数的参与。范例:

System.out.println(6.0/4);//输出结果1.5

字符的+操作

字符是可以和数字进行+操作的,是拿了字符在计算机底层对应的数值来进行的计算。如:
‘A’->65
‘a’->9
‘0’->48 //0-9是连续的
字符+整数结果自动转换成整数,所以不能用char类型直接接收

int i=10;
char a='A';
//char r=i+a;错误
//int r=i+a;正确

字符串的+操作

直接拼接

System.out.println("hello"+"world");//结果helloworld
System.out.println(123+"world");//结果123world
System.out.println("hello"+321);//结果hello321
System.out.println("hello"+12+3);//结果依然是hello123,从左到右执行
System.out.println(12+3+"world");//结果是15world,从左到右执行

赋值运算符

注意:+=等扩展的赋值隐含了强制类型转换

short a=20;
a+=10;//虽然10是int类型,但是直接用short类型的a接收不会报错

自增自减运算符

单独使用时,++i和i++没有区别。
参与操作使用时:

int i=10;
int j=i++;
//i先进行赋值,再做++
System.out.println(i);//11
System.out.println(j);//10
int i=10;
int j=++i;
//i先进行++,再做赋值
System.out.println(i);//11
System.out.println(j);//11

关系运算符

返回值为true或false

符号说明
==a==b,判断a和b是否相等,成立为 true,不成立为false
!=a!=b,判断a和b是否不相等,成立为true,不成立为false
>a>b,判断a是否大于b,成立为true,不成立为false
>=a>=b,判断a是否大于等于b,成立为true,不成立为false
<a<b,,判断a是否小于b,成立为true,不成立为false
<=a<=b,,判断a是否小于等于b,成立为true,不成立为false

注意==不要写成赋值=:

int i=10,j=20;
System.out.println(i==j);//输出结果为false
System.out.println(i=j);//输出结果为20,赋值运算符

逻辑运算符

^:异或运算符,两边相同为false,不同为true

int i=10,j=20,k=30;
System.out.println((i>j)^(i>k));//false^false结果为false
System.out.println((i<j)^(i>k));//true^false结果为true

!:逻辑非

System.out.println((i>j));//false
System.out.println(!(i>j));//true
System.out.println(!!(i>j));//false

短路与和短路或
之所以叫短路,意即当左边运算做完已经可以得到结果是true还是false时,不会在做右边运算。
以短路与为例:

System.out.println((i++>100)&(j++>100));//i和j都进行了和100的比较,然后都做了++,输出i和j会得到11和21
System.out.println((i++>100)&&(j++>100));//输出i和j会得到11和20,因为由左边已经可以得到结果false,右边就不会再执行

同理短路或,如果左边为真,右边也不会再执行。

三元运算符

格式: 关系表达式?表达式1:表达式2;

首先计算关系表达式的值,若为true,表达式1的值就是运算结果,若为false,表达式2的值就是运算结果。

范例:

int a=10,b=20;
int max=a>b?a:b;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值