博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
操作符
阅读量:6913 次
发布时间:2019-06-27

本文共 1496 字,大约阅读时间需要 4 分钟。

hot3.png

1、Java操作符

  • 几乎所有的操作符都只能操作基本类型。例外的操作符是“=”、“==”和“!=”,这些操作符能操作所有的对象。除此之外,String类支持“+”和“+=”。

2、优先级

  • Java对计算顺序做了特别的规定。忘记优先级规则,应该用括号明确规定计算顺序。

3、赋值

  • 基本数据类型的赋值是很简单的。基本类型存储了实际的数值,而并非指向一个对象的引用。

  • 对象“赋值”:对一个对象进行操作时,我们真正操作的是对对象的引用。

4、算术操作符

  • +、-、*、/、%

  • 一元减号和加号与二元减号和加号都使用相同的符号。

5、自动递增和递减

  • 递减操作符是“--”;递增操作符是“++”。

  • 对于前缀递增和前缀递减(++a或--a),会先执行运算,再生成值。对于后缀递增和后缀递减(a++或a--),会先生成值,在执行运算。

6、关系操作符

  • 关系操作符包括小于(<)、大于(>)、小于或等于(<=)、大于或等于(>=)、等于(==)以及不等于(!=)。

  • 对象之间使用==或!=,是比较的对象的引用。大多数java类库都实现了equals方法,以便用来比较对象的内容,而非比较对象的引用(注:Object类比较是对象的引用,新创建的类未重写equals方法则也是比较对象的引用)。

7、逻辑操作符

  • 逻辑操作符:与(&&)、或(||)、非(!)

  • 短路:一旦能明确无误地确定整个表示式的值,就不再计算表达式余下部分。这将获得潜在的性能提升。

8、直接常量

  • 直接常量后面的后缀字符标志了它的类型。若为大写(或小写)的L,代表Long。大写(或小写)字母F,代表float;大写(或小写)字母D,则代表double。

  • 十六进制数试用于所有整数类型,以前缀0x(或0X),后面跟随0-9或小写(或大写)的a-f表示。

  • 八进制数由前缀0以及后续的0-7的数字来表示。

  • 指数计数法:Java中像1.39e-43f这样的表达式,其含义是1.39×10ˉ⁴³。

9、按位操作符

  • 按位操作符:与(&)、或(|)、非(~)、异或(^,相同则为0,不同则为1)。

  • &=、|=和^=都是合法的(“~”是一元操作符,不可与“=”联合使用)。

10、移位操作符

  • 左移位操作符(<<)能按照操作符右侧指定的位数将操作符左边的操作数向左移动(在低位补0)。“有符号”右移位操作符(>>)能按照操作符右侧指定的位数将操作符左边的操作数向右移动。

  • “有符号”右移位操作符使用“符号扩展”:若符号为正,则在高位插入0;若符号为负,则在高位插入1。

  • “无符号”右移位操作符(>>>),它使用“零扩展”:无论正负,都在高位插入0。

  • “移位”可与“等号”(<<=、>>=、>>>=)组合使用。此时,操作符左边的值会移动由右边的值指定的位数,再将得到的结果赋给左边的变量。

11、三元操作符

  • 表达式形式:boolean-exp ? value0:value1

  • 编程高效,但是很容易产生可读性极差的代码,慎重使用。

12、类型转换操作符

  • 在适当的时候,Java会将一种数据类型自动转换为另一种(例如int自动转换为float)。

  • 浮点型转换为整型值,总是对该数字执行截尾。舍入需使用java.lang.Math中的round()方法。

  • 对基本数据类型执行算术运算或按位运算,只要类型比int小(即char、byte、short),运算之前这些值会自动转换成int,最终生成的结果就是int类型。

  • 通常,表达式中出现的最大的数据类型决定了表达式最终结果的数据类型。

转载于:https://my.oschina.net/90liusq/blog/303822

你可能感兴趣的文章
js获取两个日期之间时间差(天数)
查看>>
Memcached 简介
查看>>
虚拟化二、Xen虚拟化技术
查看>>
Oracle 11g数据库随系统自动启动与关闭的设置方法
查看>>
git pull force
查看>>
使用new操作符来调用一个构造函数的时候发生了什么
查看>>
交换机配置vlan 访问控制列表
查看>>
Python面向对象之类的成员
查看>>
Win8上iis配置
查看>>
Confluence 6 配置 Office 转换器
查看>>
Grin交易原理详解
查看>>
大数据体系【概念认知】系列-2:存储以及副本策略
查看>>
Apache与Tomcat区别联系
查看>>
用shell编写批量打包日志脚本
查看>>
传统的MapReduce框架慢在那里
查看>>
20个java异常处理最佳实践
查看>>
001作业题
查看>>
关于实习
查看>>
叠加等边三角形
查看>>
网页换肤
查看>>