Java基础01---操作符
2016-05-17 17:12
323 查看
操作符:操作符接受一个或多个参数,并生成一个新值.
优先级:应该使用括号明确规定计算顺序;
赋值(=): 对基本类型,将值copy一份赋给左值,两份数据互相不影响;对引用类型,赋值是将原对象的引用copy一份赋给左值,引用指向同一个对象;
算术操作符:整数除法会直接去掉结果的小数位,而不是四舍五入;
自动递增和递减:前缀(++a、–a)先算再用,后缀(a++,a–)先用再算;
关系操作符:(>、<、>=、<=、==、!= )== 和 != 比较的是对象的引用;equals()的默认行为是比较引用;
逻辑操作符:”与”(&&)、”或”(||)、”非”(!) ,此三种操作符只可应用于布尔值;(短路:一旦能够确定表达式的值,就不在计算表达式剩余的部分)
按位操作符:
按位与(&) : 两位均为1,则输出位1,否则为0;
按位或(|):两位中有一个为1,则输出位为1,否则为0;
按位异或(^):两位中一位为0,一位为1,则输出位1,否则为0;
取反(~):输入0,输出1;输入1,输出0;
移位操作符(<<、>>、>>>):>>>无论正负最高位都插入0;char/byte/short进行移位操作之前会先转换为int类型,移位后截断,再赋给原来的类型;
三元操作符(if-else):boolean-exp ? valuetrue : valuefalse
字符串操作符(+,+=):
类型转换操作符(cast):将float或double转换为整型值时不会四舍五入,而是执行截尾操作,如果要使用四舍五入Math.round(3.1);两个不同类型的值做运算时,结果会提升为较大的类型;
优先级:应该使用括号明确规定计算顺序;
赋值(=): 对基本类型,将值copy一份赋给左值,两份数据互相不影响;对引用类型,赋值是将原对象的引用copy一份赋给左值,引用指向同一个对象;
算术操作符:整数除法会直接去掉结果的小数位,而不是四舍五入;
自动递增和递减:前缀(++a、–a)先算再用,后缀(a++,a–)先用再算;
关系操作符:(>、<、>=、<=、==、!= )== 和 != 比较的是对象的引用;equals()的默认行为是比较引用;
逻辑操作符:”与”(&&)、”或”(||)、”非”(!) ,此三种操作符只可应用于布尔值;(短路:一旦能够确定表达式的值,就不在计算表达式剩余的部分)
按位操作符:
按位与(&) : 两位均为1,则输出位1,否则为0;
按位或(|):两位中有一个为1,则输出位为1,否则为0;
按位异或(^):两位中一位为0,一位为1,则输出位1,否则为0;
取反(~):输入0,输出1;输入1,输出0;
移位操作符(<<、>>、>>>):>>>无论正负最高位都插入0;char/byte/short进行移位操作之前会先转换为int类型,移位后截断,再赋给原来的类型;
三元操作符(if-else):boolean-exp ? valuetrue : valuefalse
字符串操作符(+,+=):
类型转换操作符(cast):将float或double转换为整型值时不会四舍五入,而是执行截尾操作,如果要使用四舍五入Math.round(3.1);两个不同类型的值做运算时,结果会提升为较大的类型;
相关文章推荐
- SpringMVC4零配置--web.xml
- Java环境设置
- springMVC -- 整合UEditor(富文本编辑器)
- java中DatagramSocket连续发送多个数据报包时产生丢包现象解决方案
- 第十七章 springboot + devtools(热部署)
- java Gzip 压缩与解压缩
- Java中堆和栈的区别
- javaweb数据库的连接
- myeclipse工程当中的.classpath 和.project文件什么作用?
- Java--银行存取款线程设计2(线程互斥)
- java序列化和RMI
- Java对象转xml报文和xml报文转Java对象帮助类
- java synchronized详解
- JAVA写注册表
- JAVA获取资源的方法
- Codeforces 66A Petya and Java
- java调用可执行文件
- 自己动手实现Spring View
- [疯狂Java]数组:Arrays(数组工具类)
- JAVA琐碎笔记