原创:simon
运算符
)Java语言中常用的运算符包括+*/这些就不用说了大家肯定很熟悉了
)幂Java没有乘幂运算符必须使用Mathpow(xa)方法表示x的a次幂pow方法的两个参数都属于double类型返回的值也是double类型
例如
double a = Mathpow(); //定义了一个变量a它的值是的次幂
)递增递减运算符
a++a 先使用变量的值然后再递增或递减
++aa 先递增或递减然后再使用变量的值
)关系和布尔运算符
关系运算符==!=<,><=,>=
布尔运算符&&(与) ||(或) !(否)
)按位运算符
&(加)|(或)^(异或)~(否)>>向右移位<<(向左移位)> >>(用零来填充位于顶部的位)
注意Java没有<<<运算符
)括号和运算符分级
在Java中各种运算符默认的计算顺序是
[]()(方法调用) 从左到右
! ~ ++ +(一元) (一元) () (造型) new 从右到左
+ / % 从左到右
+ 从左到右
<< >> > >> 从左到右
< <= >= > instanceof 从左到右
== != 从左到右
& 从左到右
^ 从左到右
| 从左到右
&& 从左到右
|| 从左到右
?: 从左到右
= += = *= /= &= |= ^= <<= >>= >>= 从右到左
在Java中可以使用括号来指定自己希望的计算顺序从而改变运算符默认的运算顺序
数值类型的互相转换
当不同数据类型的数据参加运算的时候会涉及到不同的数据类型的转换问题
Java语言数据类型的转换基本上按照下面的规则进行
如果其中一个运算对象是double类型的另一个也会被转换成double类型
否则如果其中一个运算对象是float类型的另一个也会被转换成float类型的
否则如果其中一个运算对象是long类型的另一个也会被转换成long类型的
否则如果其中一个运算对象是int类型的另一个也会被转换成int类型的
否则如果其中一个运算对象是short类型的另一个也会被转换成short类型的
类型转换还可以通过造型来实现语法很简单将目标类型放在括号里然后在后面跟上一个变量名就可以了
例如
double x = ;
int nx=(int)x; //这时nx就是一个int类型的数据了并且它的值是后面的部分在造型过程中被丢掉了如果想把一个浮点数舌入成最接近的整数可以使用Mathround方法在使用Mathround方法舌入后可能还要使用造型来进行类型转换
Java还允许将一种类型的变量值赋给另一个变量同时不进行显示造型同样可以进行某些特定的赋值转换允许的转换包括
buty>short>int_>long>float>double char>int
当进行赋值的时候会按照上面的顺序从左向右转换