Java 运算符

开发工具与关键技术: MyEclipse 10、Java语法
作者:邓婵
撰写时间:2019年 5月 2日

运算符是一种特定的数学或逻辑操作的符号,而Java中运算符又分为算术运算符,关系运算符,逻辑运算符,赋值运算符和其它运算符。

  1. 算术运算符(+(相加)、-(相减)、*(乘法)、/(除法)、%(取余)、++(自增)、–(自减))
    在这里插入图片描述
    结果如图下所示
    在这里插入图片描述
    a除以b等于f结果应该为1.2,但输出的结果为1,因为整数/整数=整数,是截断小数取整,而不是四舍五入取整。
    % 取余要注意两个整数时 第二个数不能是0。一个或者2个为浮点数,第二个数为0或者0.0时,结果为NaN。第一个数为0或0.0时,结果为0.0
    注意:自增(自减)在前面和在后面的区别:
    ++y(­­y):先将 y 的值自增(自减)1,然后再在当前表达式中使用 y 的值。
    y++(y­­):先在当前表达式中使用 y 的值,然后再将 y 的值自增(自减)1。

  2. 关系运算符

检查左操作数的值是否大于右操作数的值,如果是那么条件为真
= 检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真
< 检查左操作数的值是否小于右操作数的值,如果是那么条件为真
<= 检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真
== 检查如果两个操作数的值是否相等,如果相等则条件为真
!= 检查如果两个操作数的值是否相等,如果值不相等则条件为真

在这里插入图片描述
结果如图下所示:
在这里插入图片描述

注意:Java中 == 和 equals()方法的区别
== 在基本数据类型的时候就是比较值是否相同,在引用类型时是比较地址
equals 用于判断引用类型的值
例子:比较str与strA是否相等
在这里插入图片描述
结果如图下所示:
在这里插入图片描述

  1. 逻辑运算符
    && 与,前后两个操作数必须都是true才返回true,否则返回false
    & 不短路与,作用与&&相同,但不会短路。
    || 称为逻辑或操作符。如果任何两个操作数任何一个为真,条件为真
    | 不短路或,作用与
    ! 称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将得到false
    ^ 异或,当两个操作数不同时才返回true,如果两个操作数相同则返回false

例子:

boolean boolValue1 = true;
boolean boolValue2 = false;
System.out.println("a && b ="+(boolValue1 && boolValue2));
System.out.println("a || b ="+(boolValue1 || boolValue2));
System.out.println("!(a && b)=" +!(boolValue1 && boolValue2));
System.out.println("a^b="+(boolValue1 ^ boolValue2));

结果如图下所示:
在这里插入图片描述

&&短路与&不短路的区别:
这里&&短路输出结果为10,因为使用&&运算符只要前面不满足条件就不往下判断,而&不短路输出结果为11,因为使用&运算符不管你前面满不满足它都要进行一遍,然后输出最后的结果
相关代码如下:

在这里插入图片描述
4. 赋值运算符
= 简单的赋值运算符,将右操作数的值赋给左侧操作数
+= 加和赋值操作符,它把左操作数和右操作数相加赋值给左操作数
-= 减和赋值操作符,它把左操作数和右操作数相减赋值给左操作数
*= 乘和赋值操作符,它把左操作数和右操作数相乘赋值给左操作数
/= 除和赋值操作符,它把左操作数和右操作数相除赋值给左操作数
%= 取余和赋值操作符,它把左操作数和右操作数取余后赋值给左操作数

  1. 其它运算符
    1) 三目运算符(?:)
    三目运算符也被称为三元运算符。该运算符有3个操作数,并且需要判断布尔表达式的 值。该运算符的主要是决定哪个值应该赋值给变量。
    例子:
    int intValue = 5;
    System.out.println((intValue > 4) ? “5>4” : “5<4”);
    这里结果输出5>4,因为三目运算符是判断前面的条件是真是假,如果为真输出前面一段,如果为假输出后面一段

2)instanceof 运算符
用来判断引用类型是否属于某个类型或者它的继承类型
例子:写一个变量判断该变量是否是String类型的,如果是就返回true,不是就返回falae
String str1=“Name”;
boolean bool=str1 instanceof String;
System.out.println(bool);

输出结果如下图所示:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值