• 运算符


     

    运算符一共分为

    算术运算

    赋值运算符

    比较运算符

    逻辑运算符

    位运算符

    三元运算符

    算数运算符

    加(+)、减(-)、乘(*)、除(/)、

    自增(分++在前和++在后)、自减(——和++一样分前后的)、

    字符串连接符(+、将字符串相加得到新的字符串)

    取模运算符(%)

    如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。 但被模数是负数就另当别论。

    当左边的绝对值小于右边: 结果是左边 当左边的绝对值等于右边或者是右边倍数的时候:结果是0

    当左边的绝对值大于右边:结果是余数,符号取决与左边的符号

    取余的正负号取决于左边

    赋值运算符

    = 等于用于赋值和初始化变量:int i = 1; a = 2;

    +=  加等于: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;

    比较运算符

    <   小于

    >   大于

    ==    相对于

    !=    不等于

    <=     小于等于

    >=     大于等于

    比较运算符运行结束之后返回的都是boolean值  返回值要么是true要么为false;

    逻辑运算符

    &       与(and)

    |        或(or)

    !     非(not)

    ^      异或(xor)

    &&    短路与

    ||    短路或

    逻辑运算符和比较运算符一样返回的值是boolean类型的

    &  两边都为true结果才为true,只要有一边是false,结果就是false

    第一个条件    第二个条件     结果

     true           true       true  

     false          true           false

     true           false          false

    false           false          false

     左右两边同时为true,结果为true。


    |  两边都为false结果才为false,只要有一边是true,结果就是true

    第一个条件    第二个条件     结果
      true          true            true
      false         true            true
      true          false           true
      false         false           false

    左右两边只要有一个结果是true,结果为true


    ^  判断两边是否不同,不同则为true,相同则为false

    第一个条件    第二个条件     结果

      true          true          false

      false         true           true

      true          false          true

      false         false          false

    左右两边相同,结果为false。


    !  取反,!true结果是false,!fasle结果是true

    !true     false
    !false    true
    !!true     true


    &&  和&结果相同,具有短路效果,如果前半是false,表达式结果一定为false,不运行后一半


    ||  和||结果相同,具有短路效果,如果前半是true,表达式结果一定为true,不运行后一半

    位运算符

    任何信息在计算机中都是以二进制的形式保存的,&|^除了可以作为逻辑运算符,也可以做为位算符。

    它们对两个操作数中的每一个二进制位都进行运算,0当做false1当做true

     

    &将两个二进制数每一位进行&运算,两边都为1结果才为1,只要有一边是0,结果就为0

     

     

    |将两个二进制数每一位进行|运算,两边都为0结果才为0,只要有一边是1,结果就为1

     

    ^将两个二进制数每一位进行^运算,只要两边不同结果就为1,相同则为0

     

     

    我们可以对数据按二进制位进行移位操作,java的移位运算符有三种:

     

    <<  左移  将二进制的每一位向左移,低位补0。左移几位就相当于乘以2的几次方。

     

    >>  右移  将二进制的每一位向右移,原来高位是0就补0,原来高位是1就补1。右移几位就相当于除以2的几次方。

     

    >>> 无符号右移  将二进制的每一位向右移,高位补0。正数移动没区别,负数移动后变为正数。

     

    三元运算符

     

    (条件表达式)?表达式1:表达式2;

     

    如果条件为true,运算后的结果是表达式1;

     

    如果条件为false,运算后的结果是表达式2;

    int i = 1,j = 2,k

    k = i > j ? i : j;

    System.out.println(z);

    比较i j的大小并输出较大的数

     

     

    总结:

    取模就是对一个数求它的余数  int类型的数默认返回类型为int  小数点后边不管多大都会被舍弃  不会像四舍五入啥的

    &&短路与如果第一个条件是false 程序直接结束更好的提高了运算速度

    ||短路或如果第一个条件是true 程序直接结束

    <<一个正整数向左移动几位就乘以2的几次幂
    >>一个正整数向右移动几位就除以2的几次幂

     

     

  • 相关阅读:
    vue,如何每次访问同样路由都可以刷新
    CentOS 7.X 关闭SELinux
    Centos7安装Redis
    ubuntu 18.04 安装 MySql,并配置远程连接
    CentOS7设置阿里镜像源
    ubuntu 18.04 设置静态ip方法
    发现网络产品漏洞后,应立即通知上游开发者,并及时通知下游用户
    ApacheCN 数据库译文集 20211112 更新
    ApacheCN Linux 译文集(二) 20211206 更新
    ApacheCN C# 译文集 20211124 更新
  • 原文地址:https://www.cnblogs.com/sooper/p/3330126.html
Copyright © 2020-2023  润新知