关于java运算符,我们大多都很熟悉,这里就总结一下我个人容易出现问题的吧。
1.算数运算符:/、%(求余)、++(自加)、——(自减)
注意:自加和自减都是针对变量而言的,不能直接对数值进行操作。而且,++在变量的左边和右边是不一样的。在左边时,表示先把操作数加1在放入表达式中,在右边时,表示先把操作数放入表达式中,再加1.例如:
运行结果:
java没有提供其他更复杂的算术运算,如果需要,可以借助java.lang.Math类的工具方法完成。double 啊=12.00;Math.pow (a,n)【求n次方】、Math.sprt (a)【开方】、Math.sin(a)【求弧度为a的sin值】、a=-a【求反】
另外,js提供了取整的四种方法:
a.丢弃小数部分,保留整数部分:parseInt(5/2),结果:2
b.向上取整,有小数,则整数部分加1:Math.ceil(5/2),结果:3
c.四舍五入:Math.round(5/2)),结果:3
d.向下取整:Math.floor(5/2),结果:2
2.逻辑运算符中有两组比较特殊一些:
&&:与,前后两个操作数都是true才返回true,否则返回false,先计算左边的操作数,如果左边返回的是false,就不再执行右边的操作数;
&:不短路与,总会计算前后两个操作数
||:或,,只要其中一个操作数返回true就会返回true。并且,先计算左边的操作数,如果左边是false,就不再执行右边的操作数。
|:不短路或;
3.三目运算符: ?
格式:(expression)?if-true-statement:if-false-statement
其实,大部分情况下,三目运算时if else的缩写,只是三目运算不支持多个语句。
最后,补充一下==和String的.equals方法吧。
很明显的,比较基本数据类型(不要求两个变量的数据类型严格相等)的变量时用“==”,只要值相等,就会返回true。关键是当比较String是否相等时,“==”比较的是是否指向同一个地址,也就是是否是同一个对象,而.equals方法则是只要字符串序列相等就可以返回true。
运行结果