zoukankan      html  css  js  c++  java
  • java运算符

    运算符是一种“功能”符号,用以通知 Java 进行相关的运算。

    Java 语言中常用的运算符可分为如下几种:

    Ø 算术运算符

    Ø 赋值运算符

    Ø 比较运算符

    Ø 逻辑运算符

    Ø 条件运算符

    1.算术运算符

    算术运算符主要用于进行基本的算术运算,如加法、减法、乘法、除法等。

    Java 中常用的算术运算符:

    其中,++ 和 -- 既可以出现在操作数的左边,也可以出现在右边,但结果是不同滴

    a++:先赋值,后自增

    ++a:先自增,后赋值

    自增和自减运算符只能用于操作变量,不能直接用于操作数值或常量!例如 5++ 、 8-- 等写法都是错误滴!

    2.赋值运算符

    赋值运算符是指为变量或常量指定数值的符号。如可以使用 “=” 将右边的表达式结果赋给左边的操作数。

    Java 支持的常用赋值运算符,如下表所示:

    3.比较运算符

    比较运算符用于判断两个数据的大小,例如:大于、等于、不等于。比较的结果是一个布尔值( true 或 false )。

    Java 中常用的比较运算符如下表所示:

    注意哦:

    1、 > 、 < 、 >= 、 <= 只支持左右两边操作数是数值类型

    2、 == 、 != 两边的操作数既可以是数值类型,也可以是引用类型

    4.逻辑运算符

    逻辑运算符主要用于进行逻辑运算。Java 中常用的逻辑运算符如下表所示:

    & 按位与  | 按位或  它们都是位运算符

    我们可以从“投票选举”的角度理解逻辑运算符:

    1、 与:要求所有人都投票同意,才能通过某议题

    2、 或:只要求一个人投票同意就可以通过某议题

    3、 非:某人原本投票同意,通过非运算符,可以使其投票无效

    4、 异或:有且只能有一个人投票同意,才可以通过某议题

    当使用逻辑运算符时,我们会遇到一种很有趣的“短路”现象。

    譬如:( one > two ) && ( one < three ) 中,如果能确定左边 one > two 运行结果为 false , 则系统就认为已经没有必要执行右侧的 one < three 啦。

    同理,在( one > two ) || ( one < three ) 中,如果能确定左边表达式的运行结果为 true , 则系统也同样会认为已经没有必要再进行右侧的 one < three 的执行啦!

    & 按位与  | 按位或  它们都是位运算符

    3&5则

     0011

    &0101

     0001

    等于1

    3|5则

     0011

    |0101

     0111

    等于7

    5.条件运算符

    条件运算符( ? : )也称为 “三元运算符”。

    语法形式:布尔表达式 ? 表达式1 :表达式2

    运算过程:如果布尔表达式的值为 true ,则返回 表达式1 的值,否则返回 表达式2 的值

    例如:

    因为,表达式 8>5 的值为 true ,所以,返回: 8大于5

    Java中运算符的优先级

    所谓优先级,就是在表达式中的运算顺序。Java 中常用的运算符的优先级如下表所示:

    级别为 1 的优先级最高,级别 11 的优先级最低。譬如,x = 7 + 3 * 2 得到的结果是 13 “先乘后加”嘛!

    PS:大家没必要去死记运算符的优先级顺序,实际开发中,一般会使用小括号辅助进行优先级管理。例如:

    分析:小括号优先级最高,因此

    1、 执行 a + 18 ,结果为 30

    2、 执行( a + 18 ) % 4 取模,结果为 2

    3、 执行 a * ( ( a + 18 ) % 4 ),结果为 24

  • 相关阅读:
    Freckles (最小生成树)
    素数筛法 模板
    Least Common Multiple (最小公倍数,先除再乘)
    Watering Grass (贪心,最小覆盖)
    Minimal coverage (贪心,最小覆盖)
    今年暑假不AC (贪心)
    Bzoj1072 [SCOI2007]排列perm
    Bzoj1087 [SCOI2005]互不侵犯King
    POJ1185 炮兵阵地
    POJ3254 Corn Fields
  • 原文地址:https://www.cnblogs.com/saoqiang/p/13863923.html
Copyright © 2011-2022 走看看