• 【java】基础语法篇-Java运算符(三)


    1、算数运算符

    假设整数类型变量A的值为:10,变量B的值为:20

    运算符描述示例
    +加法运算符,第一个操作数加上第二个数操作数A+B结构为30
    -减法运算符,从第一个操作数减去第二个操作数A - B结果为:-10
    *两个操作数相乘A * B结果为:200
    /左操作数除以右操作数返回模值B / A结果为:2
    %左操作数除以右操作数返回余数B / A结果为:0
    ++将操作数的值增加1A++,则A的值为:11
    将操作数的值减1A–,则A的值为:9

    注意点:

    • 当 int ± char 的时候,char会按照ASCII表被转为数值在相加减。
    • 当String做加法时候,运算会变成字符串拼接,其他类型的数值与其相加也会先转为字符串后进行拼接。
    • ++ -- 自增、自减:a++,++a 一个是先++,一个是后++,虽然这样写,先加后加结果不变,但有些时候这两个有不同结果;
      int a = 0;
      int b = 0;
      b = a++; // a先赋值给b,b=0,a+1=1
      b = ++a; // 先a+1=2,后赋值给b=2
      

    2、赋值运算符

    运算符描述示例
    =简单赋值运算符。 将右侧操作数的值分配给左侧操作数。C = A + B将A + B的值分配给C。
    +=相加与赋值运算符。 它将右操作数相加到左操作数并将结果分配给左操作数。C += A等于C = C + A。
    -=减去与赋值运算符。 它从左操作数中减去右操作数,并将结果赋给左操作数。C -= A等于C = C - A。
    *=乘以与赋值运算符。 它将右操作数与左操作数相乘,并将结果赋给左操作数。C *= A等于C = C * A。
    /=除以与赋值运算符。 它将左操作数除以右操作数,并将结果赋给左操作数。C /= A等于C = C / A。
    %=模数与赋值运算符。 它使用两个操作数来计算获取模数,并将结果赋给左操作数。C %= A等于C = C % A。
    <<=左移与赋值运算符。C <<= 2与C = C << 2相同
    >>=右移与赋值运算符。C >>= 2与C = C >> 2相同
    &=按位与赋值运算符。C &= 2与C = C & 2相同
    ^=按位异或和赋值运算符。C ^= 2与C = C ^ 2相同
    Ι=按位包含或与赋值运算符。C Ι= 2与C = C Ι=2相同

    3、条件运算符

    假设变量A的值是10,变量B的值是20.

    运算符描述示例
    ==等于运算符,检查两个操作数的值是否相等,如果相等,则条件变为真。A==B结果为假。
    !=不等于运算符,检查两个操作数的值是否不相等,如果不相等,则条件变为真。A!=B结果为真。
    >大于运算符,检查左操作数的值是否大于右操作数的值,如果大于,则条件变为真。A>B结果为假。
    <小于运算符,检查左操作数的值是否小于右操作数的值,如果小于,则条件变为真。A
    >=大于或等于运算符,检查左操作数的值是否大于等于右操作数的值,如果大于或等于,则条件变为真。A>=B结果为假。
    <=小于或等于运算符,检查左操作数的值是否小于或等于右操作数的值,如果小于或等于,则条件变为真。A<=B结果为真。

    4、按位运算符

    Java定义了几个按位运算符,可以应用于整数类型, 如:long,int,short,char和byte。e按二进制位运算符处理位并执行逐位运算。假设整数变量A=60,变量B=13

    运算符描述示例
    &二进制AND运算符,如果存在于两个操作数中,则它会将结果复制到结果中。A & B的结果为:12,也就是:0000 1100
    Ι二进制OR运算符,如果存在于任一操作数中,则复制一位。A Ι B 的结果为:61,也就是:0011 1101
    ^二进制异或运算符,如果在一个操作数中设置但不在两个操作数中设置,则复制该位。A ^ B的结果为:49,也就是:0011 0001
    ~二元一元补充运算符是一元的,具有“翻转”位的效果。~A的结果为:-61,也就是:1100 0011
    <<二进制左移运算符,左操作数值向左移动右操作数指定的位数。A << 2的结果为:240,也就是:1111 0000
    >>二进制右移运算符,左操作数值向右移动右操作数指定的位数。A >> 2的结果为:15,也就是:1111
    >>>右移零填充运算符。 左操作数值向右移动右操作数指定的位数,移位值用零填充。A >>>2的结果为:15,也就是:0000 1111

    5、逻辑运算符

    假设布尔变量A的值为:true,变量B 的值为:false,则 -

    运算符描述示例
    &&逻辑AND运算符。 如果两个操作数都不为零,则条件成立。(A && B)结果为:false
    ΙΙ逻辑OR运算符。 如果两个操作数中的任何一个非零,则条件变为真。(A ΙΙ B)结果为:true
    !逻辑非运算符。用于反转其操作数的逻辑状态。 如果条件为真,则口逻辑NOT运算符将为false。!(A && B)结果为:true

    6、条件三元运算符(?😃

    int a = 2, b = 8;
    int result = 0;
    result = a > b? a : b; //判断a>b,真就执行?后面(a)赋值给result,假就执行:后面(b)赋值给result。
    
  • 相关阅读:
    Java 类和对象
    【day10.01】使用select实现服务器并发
    Android 实现ProgressBar菊花旋转进度条的 效果(用于耗时loading时显示)
    xpath常用语法
    一、Excel VBA 是个啥?
    GitHub上24.3kStar的js进度条插件,确定不关注一下?
    走进Spark
    springboot网络安全考核平台设计毕业设计源码042335
    6.自定义映射resultMap
    zabbix 7.0编译部署教程
  • 原文地址:https://blog.csdn.net/weixin_51233575/article/details/127022528