每种运算符都有固定的优先级和结合性,它们是用来决定计算顺序的。
简单来说,规则有两条:
(1)优先级高的运算符先参与运算。“先算乘除后算加减”说的就是优先级。
(2)优先级相同时,按结合性的顺序计算。比如乘法和除法优先级相同,我们都知道3*6/2要从左向右计算,这说的就是结合性。
结合性分为左结合性和右结合性。所谓的左结合就是运算符跟着左边的数字混,比如3*6/2,“/”跟6混,*号跟3混,3前面没有别的运算符了,它就是领头的,所以要从它开始向右算起。这就是为什么左结合性表示从左到右依次计算,而右结合性则从右到左计算。
大多数运算符(包括算术运算符、关系运算符等)都是左结合的,但也有一些特殊的运算符,如赋值运算符和条件运算符(?:)是右结合的。