网站首页 > java教程 正文
1 运算符
运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。
具体包含以下六种运算符。
算术运算符、赋值运算符、比较运算符(关系运算符)、逻辑运算符、位运算符、三元运算符。
2 算术运算符
运算符 | 运算 |
+ | 正号 |
- | 负号 |
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
% | 取模(取余) |
++ | 自增(前):先运算后取值 自增(后):先取值后运算 |
- - | 自减(前):先运算后取值 |
+ | 字符串连接 |
注意:
1、如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。 但被模数是负数则不可忽略。此外,取模运算的结果不一定总是整数。
2、对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。
3、“+”除字符串相加功能外,还能把非字符串转换成字符串。
3 赋值运算符
符号:=
赋值运算符的优先级别要低于其他的运算符,所以对该运算符往往最后读取。
当“=”两侧数据类型不一致时,可以使用自动类型转换或使用强制类型转换原则进行处理。
扩展赋值运算符: +=, -=, *=, /=, %=
//=与+=的比较
short s1 = 10;
s1 = s1 + 2;//编译失败,因为2是整形,无法转为char型
s1 += 2;//结论:不会改变变量本身的数据类型
System.out.println(s1);
4 比较运算符
运算符 | 运算 |
== | 相等 |
!= | 不相等 |
< | 小于 |
> | 大于 |
<= | 小于等于 |
>= | 大于等于 |
instanceof | 检查是否是类的对象 |
5 逻辑运算符
&—逻辑与;| —逻辑或;!—逻辑非
&& —短路与;|| —短路或;^ —逻辑异或
6 位运算符
运算符 | 运算 | |||||
<< | 左移 | |||||
>> | 右移 | |||||
>>> | 无符号右移 | |||||
& | 与运算 | |||||
| | 或运算 | |||||
^ | 异或运算 | |||||
~ | 取反运算 |
注意:位运算是直接对整数的二进制进行的运算
举例:
3 << 2 = 12结果为 3*2*2=12
0000 0000 0000 0011————3
0000 0000 0000 1100————12
7三元运算符
语法:(条件表达式)? 表达式1 : 表达式2
【典型代码】
1.获取两个整数的较大值
2.获取三个数的最大值
【特别说明】
1. 说明
① 条件表达式的结果为boolean类型
② 根据条件表达式真或假,决定执行表达式1,还是表达式2.
如果表达式为true,则执行表达式1。
如果表达式为false,则执行表达式2。
③ 表达式1 和表达式2要求是一致的。
④ 三元运算符可以嵌套使用
2.
凡是可以使用三元运算符的地方,都可以改写为if-else反之,不成立。
3. 如果程序既可以使用三元运算符,又可以使用if-else结构,那么优先选择三元运算符。原因:简洁、执行效率高。
猜你喜欢
- 2024-09-27 「编程基础」零基础学习Java之运算符
- 2024-09-27 C语言中的“隐形”语法:三目运算符极致解析
- 2024-09-27 Java运算符之算术运算符和举例说明
- 2024-09-27 java运算符顺序(java中运算符的优先顺序)
- 2024-09-27 【学习笔记】分支结构的第三大板块:三目运算符
- 2024-09-27 【java】运算符基础 【java】运算符基础 #运算符
- 2024-09-27 java基本语法之运算符(java语言中的运算符有哪些)
- 2024-09-27 Spring SpEL三元运算符(sql三元运算符)
- 2024-09-27 Java运算符和表达式(java运算符和表达式答案)
- 2024-09-27 一起学JAVA 初识JAVA运算符(java ~运算符)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)