您现在的位置: 主页 > 上位机技术 > JAVA > JAVA运算符分类例子
本文所属标签:
为本文创立个标签吧:

JAVA运算符分类例子

来源:网络整理 网络用户发布,如有版权联系网管删除 2018-07-23 

&是位

&&是逻辑

当&两边是整数时执行的是位运算,而两边是boolean值时执行的是逻辑运算,

如:

3&6 就是执行的位运算,结果是一个整数:2

true&false 执行的就是逻辑运算,结果是一个boolean值:false

&的逻辑运算和&&逻辑运算是存在一定不同的

&逻辑运算时两边都会计算的,而&&则在左边为假时则直接返的是false不再计算右边

举个例子:

1:

int[] a={1,2,3};

if(a[0]==2&a[3]==4){System.out.println("true")}

2:

int[] a={1,2,3};

if(a[0]==2&&a[3]==4){System.out.println("true")}

这两个例子中,第一个会抛出异常,而第二个则什么不会输出也不会抛异常

这是因为第一个例子中if语句中用的是&,所以两边的都会计算,当计算a[3]==4时抛出数组下标越界异常

第二个例子则在计算第一个式子a[0]==2发现结果为假则不再计算右边,直接返回false,所以该例子不会输出任何东西 。

3:java中用的最多的一个三目运算符:A=3?b:c;

如果A=3成立的话结果是b,如果不成立的话结果是c;

运算符演示

在Java 中提供运算功能的就是运算符(Operator),算术运算符有加(+)、减(-)、乘(*)、除(/)这类的运算符。另外还有一个很常用的取模运算符(%)。这类以数学运算为主的运算符称为算术运算符(Arithmetic Operator)。

举几个算数运算的例子:

int a = 5+4; //a=9

int b = a*2; //b=18

int c = b/4; //c=4

int d = b-c; //d=14

int e = -d; //e=-14

int f = e%4; //f=-2

这里简单说一下取模运算符(%),其实就是取除法后的余数,例子中的int f = e%4,就是-14对4取余数,结果为-2。与C、 C++不同,对取模运算符%来说,其操作数可以为浮点数, 如 37.2%10=7.2

而且,Java对加运算符进行了扩展,使它能够进行字符串的连接,如"abc"+"de",得到字符串 "abcde"。但是这只是对于字符串连接的简单扩展,字符串并不支持诸如减法的其他运算。有趣的是,字符是支持加法和减法的,其参与运算的是这个字符的ASCII码值。例如b的ASCII码值比a大1,所以(‘b’-‘a’)的结果就是1。

三个移位

JAVA左移:<<带符号右移:>>

无符号右移:>>>“ < <”, “> > ”, “> > > ”在Java中是左移、有符号右移和无符号右移运算符。位移运算符只对int值进行操作,如果不是int,编译器会报错。在Java中,一个int的长度始终是32bit,也就是4个字节。

1)左移动运算符:

会将操作的数向左边移动,移动的位的个数由指定,左移(2)右移动运算符:

反过来,把操作数向右移动,移动的位个数同样由右操作数指定。(3)无正负号的右移运算符(>>>):

采用0补充,意思就是说

Test { main(String[] args) {

m=-7;

System.out.println("m的二 进 制码是:"+Integer.toBinaryString(m));

System.out.println("m>>2的二进制码是:"+Integer.toBinaryString(m>>2));

System.out.println("(m>>2)="+(m>>2));

System.out.println("m<<2的二进制码是:"+Integer.toBinaryString(m<<2));

System.out.println("(m<<2)=:"+(m<<2));

System.out.println("m>>>24的二进制码是:"+Integer.toBinaryString(m>>>24));

System.out.println(" m>>>24 :"+ (m>>>24));

}

}

-7的反码:11111111111111111111111111111000

补码:11111111111111111111111111111001



              查看评论 回复



嵌入式交流网主页 > 上位机技术 > JAVA > JAVA运算符分类例子
 运算 运算符 例子

网站地图

围观()