Java运算符

  • 算数运算符

    • + - * / %(求模/取余)
    • /和%的区别:两个数据做除法,/取结果的商,%取结果的余数。
    • 整数操作只能得到整数,要想得到小数,必须有浮点数参与运算。
  • 赋值运算符

    • = 赋值 a=10,将10赋值给变量a
    • += 加后赋值 a+=b(a=a+b),将a+b的值给a
    • -= 减后赋值 a-=b(a=a-b),将a-b的值给a
    • *= 乘后赋值 a*=b,将a×b的值给a
    • /= 除后赋值 a/=b,将a÷b的商给a
    • %= 取余后赋值 a%=b,将a÷b的余数给a
    • ==注意==
      • 扩展的赋值运算符隐含了强制类型转换。
  • 自增自减运算符

    • ++ 自增
    • -- 自减
    • ==注意事项==
      • ++和-- 既可以放在变量的后边,也可以放在变量的前边。
      • 单独使用的时候, ++和-- 无论是放在变量的前边还是后边,结果是一样的。
      • 参与操作的时候,如果放在变量的后边,先拿变量参与运算操作,后拿变量做++或者--。
      • 参与操作的时候,如果放在变量的前边,先拿变量做++或者--,后拿变量参与运算操作。
  • 关系运算符

    • == a==b,判断a和b的值是否相等,成立为true,不成立为false
    • != a!=b,判断a和b的值是否不相等,成立为true,不成立为false
    • > a>b,判断a是否大于b,成立为true,不成立为false
    • >= a>=b,判断a是否大于等于b,成立为true,不成立为false
    • < a<b,判断a是否小于b,成立为true,不成立为false
    • <= a<=b,判断a是否小于等于b,成立为true,不成立为false
    • ==注意事项==
      • 关系运算符的结果都是boolean类型,要么是true,要么是false。
      • 千万不要把“==”误写成“=”,"=="是判断是否相等的关系,"="是赋值。
  • 逻辑运算符

    • & 逻辑与 a&b,a和b都是true,结果为true,否则为false
    • | 逻辑或 a|b,a和b都是false,结果为false,否则为true
    • ^ 逻辑异或 a^b,a和b结果不同为true,相同为false
public class LuoJi {
    public static void main(String[] args) {
        int age = 21 ;
        double height = 1.8;
        System.out.println(age>18 & height>=1.8);   //逻辑与&,当两边的结果都为true时最终结果为true,否则为false
        System.out.println(age<18 & height>=1.8);   //短路与&&,作用与&相同,当判断最左边的结果为false时,则不再进行后续的代码判断,提高代码效率
        System.out.println(age>18 | height>1.8);    //逻辑或,当两边的结果只要有一个为true则结果为true,否则为false
        System.out.println(age<18 | height>1.8);    //短路或||,作用与|相同,当判断最左边的结果为true时,则不再进行后续的代码判断,提高代码效率
        System.out.println(age<18 ^ height>1.8);    //逻辑异或,当两边的结果值相同时为true,不同时为false
        System.out.println(age<18 ^ height<=1.8);
        System.out.println(!(age>18 ^ height>=1.8));    //逻辑非,逻辑取反,最终结果的相反结果,既最终结果为true,则取反为false
    }
}

        

  • 短路逻辑运算符

    • && 短路与 作用和&相同,但是有短路效果
    • || 短路或 作用和|相同,但是有短路效果
    • 短路效果
      • 在逻辑 (与&&) 运算中,只要有一个表达式的值为false,那么结果就可以判定为false了,没有必要将所有表达式的值都计算出来,短路与操作就有这样的效果,可以提高效率。同理在逻辑 (或||) 运算中,一旦发现值为true,右边的表达式将不再参与运算。
  • 三元运算符(三目运算)

    • 语法:布尔表达?值1:值2;
    • 布尔表达式
      • 结果为true,则运算结果取值1
      • 结果为false,则运算结果取值2
      public class HeShang {
          public static void main(String[] args) {
              int a = 165;
              int b = 170;
              int c = 185;
              int max = a >=b ? a : b;
              int maxend = max >= c ?max:c;
              System.out.println("三个和尚中的最高身高为"+maxend);
      
          }
      }
    • 注意:三元运算的结果接收时要根据?之后设置的值的类型进行变量创建。
  • 16
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值