算术运算符
【典型代码】:
【特别说明的】
1、如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。 但被模数是 负数则不可忽略。此外,取模运算的结果不一定总是整数。
2、对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只 保留整数部分而舍弃小数部分。 例如:int x=3510;x=x/1000*1000; x的 结果是?//3000
3、“+”除字符串相加功能外,还能把非字符串转换成字符串.例如: System.out.println(“5+5=”+5+5); //打印结果是? 5+5=55 ?
赋值运算符
【典型代码】
①会报错,2默认为是整型变量
②编译通过,+=不会改变数据类型。
比较运算符(关系运算符)![在这里插入图片描述](https://img-blog.csdnimg.cn/20201201160404487.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ1NTU0OTA5,size_16,color_FFFFFF,t_70)
逻辑运算符
【特别说明的】
区分& 与 &&
相同点1:& 与 && 的运算结果相同
相同点2:当符号左边是true时,二者都会执行符号右边的运算
不同点:当符号左边是false时,&继续执行符号右边的运算。&&不再执行符号右边的运算。
开发中,推荐使用&&
区分:| 与 ||
相同点1:| 与 || 的运算结果相同
相同点2:当符号左边是false时,二者都会执行符号右边的运算
不同点3:当符号左边是true时,|继续执行符号右边的运算,而||不再执行符号右边的运算
开发中,推荐使用||
位运算符
- 位运算符操作的都是整型的数据
- << :在一定范围内,每向左移1位,相当于 * 2
>> :在一定范围内,每向右移1位,相当于 / 2
【面试题】 你能否写出最高效的2 * 8的实现方式?
答案:2 << 3 或 8 << 1
说明:2左移3位相当于乘以2的3次方,8左移1位相当于乘以2的1次方
【特别说明的】
三元运算符
说明:
① 条件表达式的结果为boolean类型
② 根据条件表达式真或假,决定执行表达式1,还是表达式2.
如果表达式为true,则执行表达式1。
如果表达式为false,则执行表达式2。
③ 表达式1 和表达式2要求是一致的。
④ 三元运算符可以嵌套使用
特别说明:
凡是可以使用三元运算符的地方,都可以改写为if-else
反之,不成立。
. 如果程序既可以使用三元运算符,又可以使用if-else结构,那么优先选择三元运算符。原因:简洁、执行效率高。