博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java学习笔记- 运算符
阅读量:6690 次
发布时间:2019-06-25

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

java中的运算符按功能划分主要分7类。

  • 算术运算符

    +, -, *, /, ++, --, %
  • 关系运算符

    <, <=, >, >=, ==, !=
  • 布尔逻辑运算符

    &&, &, ||, |, !, ^
  • 位运算符

    &, |, ~, ^, >>, >>>, <<
  • 赋值运算符

    =, +=, -=, *=, /=, &=, |=, %=, <<=, >>=, >>>=
  • 条件运算符

    ?:
  • 其它运算符

    (类型), ., [], (), instanceof, new

下面罗列一下一些运算符中需要注意的点。

1. 整数除法

整数除法的结果也是一个整数。

例如:

int i = 2/4*100; //i的计算结果为0

2. 自增自减运算符

自增自减运算符载操作数的前面或者后面是不同的。

例如

int n = 100;int x = n++; // ++放在n后,即先将n的值附给x,然后让n自增1。int y = ++100; // ++放在n前面,先让n自增1,然后再赋给y。

自减符号类似。

3. 算术运算符的优先级

++,-- > *,/,% > +,-

4.浮点数比较

在java中,一般不建议直接比较两个浮点数是否相等。根据IEEE 754标准,float和double数据类型都无法精确表示你想要的某一个值,即计算机在表示的时候会有一定的误差。

一个有理数,除非分母是足够小的2的整数次幂,否则它就不能被精确表示。

因此需要慎重对浮点数做直接的等于或者不等于操作。

常用的判断两个浮点数是否相等的方法如下:

(d1>d2-epsilon) && (d1

epsilon就是浮点数的容差,其取值多少与实际的应用嘻嘻相关。一般在财务与网络应用中,epsilon一般取1e-5。在计算机辅助设计系统中通常取值1e-8.

5. 布尔值运算符短路规则

&&||具有短路规则。即第一个操作数已经成立,则不再计算后一个操作数。

&&是如果前一个操作数已经为false,则后一个操作数也不再计算判断直接判定为false。
||是如果前一个操作数已经是true,则后一个操作数也不在计算判断直接判定为true。

6. 赋值类运算符赋值类运算符包括最基础的`=`。还有与二元运算符相结合的赋值运算符。与二元运算符相结合的赋值运算符有:    +=, -=, *=, /=, &=, |=, %=, <<=, >>=, >>>=其运算即为先两者进行二元操作再赋值给前者。7. 位运算符

转载地址:http://zuuoo.baihongyu.com/

你可能感兴趣的文章
Ubuntu 12.04中文输入法的安装
查看>>
jQuery的.live()和.die()[转]
查看>>
hdu_2002_计算球体积_解题报告
查看>>
连接数据库通过配置文件app.config
查看>>
赛星软件---智能视频分析事件检测
查看>>
【二叉树遍历】中序
查看>>
一个完整的类用来读取OpenSSL生成的pem格式的x509证书
查看>>
Delphi调用WebService(通过SoapHeader认证)经验总结
查看>>
2014年最新世界各国面积排名(172个国家)
查看>>
socket编程演示样例(多线程)
查看>>
C++ 初始化与赋值
查看>>
碰到的异常
查看>>
Android对话框-上篇-之系统对话框
查看>>
利用Segue在视图控制器间传值的问题
查看>>
发动机存隐患 现代起亚宣布在美召回16.8万辆车
查看>>
最前线|VIPKID正寻求4-5亿美元新一轮融资,估值达60亿美元
查看>>
文 OR 理?答案都在这里!
查看>>
XML+JSON面试题都在这里
查看>>
教你如何攻克Kotlin中泛型型变的难点(实践篇)
查看>>
2018Android面试经历
查看>>