当前位置:学者斋 >

计算机 >java语言 >

Java的运算符和表达式

Java的运算符和表达式

Java常用的运算符分为五类,位运算符除了简单的按位操作外,还有移位操作。按位操作返回布尔值。下面就为大家介绍一下Java的运算符和表达式,一起来看看吧!

Java的运算符和表达式

  一、 算术运算符及算术表达式

Java中常用的算术运算符如下:

+ 加运算符

- 减运算符

* 乘运算符

/ 除运算符

% 取模运算(除运算的余数)

++ 增量运算符

-- 减量运算符

例:测试运算符及表达式,程序输出如图1。

程序代码如下:

//程序文件名称为

public class NumberOper

{

public static void main(String args[])

{

//变量初始化

int a = 30;

int a = 20;

//定义结果变量

int r1,r2,r3,r4,r5,r6,r7,r8,r9;

//计算结果

r1 = a + b;

r2 = a-b;

r3 = a * b;

r4 = a/b;

r5 = a % b;

r6 = a ++;

r7 = b --;

r8 = ++ a;

r9 = -- b;

//输出结果

tln("a="+a+" b="+b);//a,b的值

tln("a+b="+r1);

tla("a-b="+r2);

tln("a*b="+r3);

tln("a/b="+r4);

tln("a%b="+r5);

tln("a++="+r6);

tln("b--="+r7);

tln("++a="+r8);

tln("--b="=r9);

}

}

图1:程序输出结果

  二、关系运算符

关系运算符用于比较两个数据之间的大小关系,关系运算表达式返回布尔值,即“真”或“假”。

Java中的常用关系运算如下:

= = 等于

!= 不等于

> 大于

< 小于

>= 大于等于

<= 小于等于

例:编写程序,测试关系运算符及其表达式,程序输出如图2。

源程序代码如下:

//程序文件名称为

public class TestRelation

{

public static void main(String args[])

{

//变量初始化

int a = 30;

int b = 20;

//定义结果变量

boolean r1,r2,r3,r4,r5,r6;

//计算结果

r1 = a == b;

r2 = a != b;

r3 = a > b;

r4 = a < b;

r5 = a >= b;

r6 = a <= b;

//输出结果

tln("a="+a" b="+b);

tln("a==b="+r1);

tln("a!=b="+r2);

tln("a>b="+r3);

tln("a<b="+r4);< p="">

tln("a>=b="+r5);

tln("a<=b="+r6);

}

}

图2:程序输出结果

  三、布尔逻辑运算符

表1:布尔运算符及规则

表1为布尔逻辑运算符及其规则规例等。其中简洁或的执行结果分别与非简洁与和非腿法看的执行结果是一致的,不同在于简洁与检测出符号左端的值为假时,不再判断符号右端的值,直接将运算结果为假;而简洁或与非简洁或的不同在于退罚款检测出符号左端为真是,不再判断符号右端的值,直接将运算结果置为真。

例如:

Boolean a = false;

Boolean a = true;

a&&b检测到a为假,则无需判断b的值,直接将值置为假;而b‖a时检测到b为真,则无需判断a的值,直接将值置为真。

例:测试布尔表达式,程序输出结果如图3。源代码如下:

//程序文件名称为

public class TestLogic

{

public static void main(String args[])

{

//变量初始化

boolean a = false;

boolean b = true;

//定义结果变量

boolean r1,r2,r3,r4,r5,r6;

//计算结果

r1 = !a;

r2 = a & b;

r3 = a|b;

r4 = a^b;

r5 = a && b;

r6 = a‖b;

tln("a="+a+" b="+b);

tln("!a="+r1);

tln("a&b="+r2);

tln("a|b="+r3);

tln("a^b="+r4);

tln("a&&b="+r5);

tln("a‖b="=r6);

}

}

图3:程序输出结果

  四、位运算符

Java中的常用位运算符如下:

~位求反

& 按位与

| 按位或

^按位异或

<< 左移

>> 右移

>>> 不带符号右移

右移运算符对应的表达式为x>>a,运算的结果是操作数x被2的a次方来除,左移运算符对应的表达式为x<<a,运算的结果是操作数x乘以2的.a次方。< p="">

例:测试位运算符<<和>>,程序输出结果如图4。

源程序代码如下:

//程序文件名称为

public class TestBit

{

public static void main(String args[])

{

//变量初始化

int a = 36;

int b = 2;

//定义结果变量

int r1,r2;

//计算结果

r1 = a >> b;

r2 = a << b;

//输出结果

tln("a="+a+" b="+b);

tln("a>>b="+r1);

tln("a<<b="+r2);< p="">

}

}

图4:程序输出结果

  五、赋值运算符

赋值运算符分为简单运算符和复杂运算符。简单运算符指“=”,而复杂运算符是指算术运算符、逻辑运算符、位运算符中的双目运算符后而再加上“=”。表2列出Java常用的赋值运算符及其等价表达式。

表2:赋值运算符

  六、其它操作符及其表达式

三目运算符(?:)相当于条件判断,表达式x?y:z用于判断x是否为真,如果为真,表达式的值为y,否则表达式值为z。

例如:

int x = 5;

int a = (x>3)?5:3;

则a的值为5。如果x = 2,则a的值为3。

对象运算符(instanceor)用来判断的一个对象是否属于某个指定的类或其子类的实例,如果是,返回真(true),否则返回假(false)。

例:

boolean b = userObject instanceof Applet

用来判断userObject类是否是Applet类的实例。

  七、优先级

表3:运算符优先级

  • 文章版权属于文章作者所有,转载请注明 https://xuezhezhai.com/jsj/java/0lm1zz.html