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