4.1 Java运算符基础与运算符结合性

运算符基础

Java 是强类型语言,运算符优先级有着严格的规定,程序会严格按照优先级运行

Java运算符图表
运算符分类结合顺序运算符
分隔符左结合. [] ( ) ; ,
一元运算符右结合! ++ – - ~
算术运算符左结合* / % + -
移位运算符左结合<< >> >>>
关系运算符左结合< > <= >= instanceof = = !=
位运算符左结合& ^ |
逻辑运算符左结合&& ||
三目运算符右结合布尔表达式?表达式1:表达式2
赋值运算符右结合= *= /= %= += -= <<= >>= >>>= &= *= |=

上述表的优先级是从高到低,即分隔符优先级最高,赋值运算符优先级最低。优先级大家可以理解为小学数学中先括号,后乘除,再加减等等

同一优先级运算符,运算次序怎么办?

运算符结合性

结合性:指一个操作数左右两边各有一个操作符时,先按照操作的优先级决定运算次序,如果优先级相同,再按照操作符的结合性来决定运算次序

Java中各种运算符的结合性分为两种:

  • 左结合性

    自左向右,即先左后右

    例如:

    表达式:
    int result = x – y + z; 
    //则y应先与 “-”号结合,执行x-y运算,然后再执行 +z的运算。
    

    这种自左向右的结合方向就称为“左结合性”

  • 右结合性

    自右向左,即先右后左

    例如:

    int result = x = y = z = 10; 
    由于“=”的右结合性,应先执行z = 10; 再执行 y = z 再执行 x = y 运算
    

    这种自右向左的结合方向就称为“右结合性”

java语言中大部分运算符也是从左到右结合的,只有一元运算符、赋值运算符和三元运算符例外

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

君哥聊编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值