`

运算符的优先级别及结合性

阅读更多

当在一个表达式中存在多个运算符进行混合运算时,会根据运算符的优先级别来决定执行顺序,关于运算符优先级的顺序,如表1所示。
表1所列运算符的优先级,由上而下优先级别逐渐降低。其中,优先级最高的是之前未提及的括号“()”,它的使用与数学运算中的括号一样,只是用来指定括号内的表达式要优先处理,括号内的多个运算符,仍然要依照表2.16的优先级顺序进行运算。
对于处在同一层级的运算符,则按照它们的结合性,即“先左后右”还是“先右后左”的顺序来执行,Java中除赋值运算符的结合性为“先右后左”外,其他所有运算符的结合性都是“先左后右”。
例如:
int a=3;
int b=3;
int c=a+++b;                             //根据运算符的优先级"++"优先于"+", 所以c=(a++)+b
System.out.println(c);                       //输出结果为: 6
boolean e=!false||true;              //先来执行"!false", 再进行逻辑或运算
boolean f=!(false||true);                  //先来执行"false||true", 再进行逻辑非运算
System.out.println(e);                       //输出结果为: true
System.out.println(f);                       //输出结果为: false
int g=3;
System.out.println(g+=2>4);       //编译出错, 因为运算符">"优先于"+=", 所以先来执行"2>4",
//再来执行"g+=false", 而布尔值不能参与算术运算,因此编译出错
System.out.println((g+=2)>4);           //g值为5, 输出结果为: true
int n1=3;
int n2=3;
int k=20;
System.out.println(n1*=10+k);          //根据赋值运算符的结合性,
//等价于"n1=n1*(10+20) ", n1值为90, 输出结果为: 90
System.out.println((n2*=10)+k);        //等价于" (n2=n2*10)+k", n2值为30, 输出结果为: 50

http://www.isstudy.com/d/file/uploads/allimg/090902/1_090902095853_1.gif

 

来自:http://www.isstudy.com/java/1589.html

分享到:
评论

相关推荐

    Java运算符优先级别.doc

    "Java运算符优先级别" Java 的运算符优先级别是非常重要的知识点,对于 Java 开发者来说是必备的技能。了解 Java 的运算符优先级别可以帮助开发者编写更加清晰、简洁的代码,避免出现不必要的错误。 首先,我们...

    运算符优先算法利用数据结构中的运算符优先算法实现整数的加、减、乘、除、括号的多项式运算,运算表达式以#结尾

    运算符优先算法 利用数据结构中的运算符优先算法实现整数的加、减、乘、除、括号的多项式运算,运算表达式以#结尾。测试表达式如下运算: "1+(1+2)*(5+25/5)#" 利用数据结构中的运算符优先算法实现整数的加、减、乘...

    运算符优先的算法实现

    运算符优先的算法实现 运算符优先分析算法是编译原理实验中的一种重要算法,它的实现可以帮助我们更好地理解编译原理的基本概念和算法思想。在这个算法实现中,我们将详细介绍运算符优先分析算法的实现过程和设计...

    C语言运算符优先等级口诀

    "C语言运算符优先等级口诀" C语言运算符优先等级口诀是编程语言C语言中一个非常重要的概念,它决定了在表达式中运算符的执行顺序。掌握C语言运算符优先等级口诀对于编写正确、效率高的程序至关重要。 圆方括号、...

    C语言运算符的优先级别次序表

    C语言运算符的优先级别次序表.pdf )

    C语言运算符的优先级

    C语言运算符的优先级可以分为15个级别,每个级别都有其特定的运算符和结合方向。 第一级:数组下标、圆括号、成员选择(对象)和成员选择(指针) * 数组下标:数组名[常量表达式] * 圆括号:(表达式)或函数名...

    Java运算符优先级

    下面将详细介绍Java中各种运算符的优先级及结合性,并提供一些实例帮助理解。 #### 二、运算符优先级表 1. **最高优先级**: - `()`(圆括号):用于分组操作,可以改变运算符的默认优先级。 - `[]`(方括号):...

    C语言各运算符优先级及函数大全

    C语言各运算符优先级及函数大全 C语言中的运算符优先级是程序员必须掌握的基础知识。了解运算符的优先级可以帮助程序员编写正确、简洁的代码。下面将详细介绍C语言中的运算符优先级和相关知识点。 一、数组下标...

    C语言运算符的优先级与结合性

    | 2 | = op= | 赋值运算符及复合赋值运算符 | ← | | 1 | , | 逗号运算符,用于顺序执行多个表达式 | → | #### 三、详解 1. **括号** `()` 和 **方括号** `[]`:用于定义函数调用、数组元素访问等。它们具有最高...

    C语言的运算符的优先级和结合性

    在表达式求值时,先按运算符的优先级别高低次序执行,例如先乘除后加减。C语言还规定了各种运算符的结合方向,众所周知的是,算术运算符的结合方式为“自左向右”,即先左后右,因此b先与减号结合,执行a-b的运算,...

    用算符优先法对算术表达式求值

    基于运算符栈和运算数栈,利用算符优先法对输入的中缀表达式求值。

    C语言中运算符的优先级与结合性

    对C语言中运算符的优先级与结合性进行了细致的排列比较。

    运算符的优先级和结合性.doc

    在编程语言中,运算符的优先级和结合性是决定表达式求值顺序的重要规则,这对于理解和编写正确、高效的代码至关重要。本篇文章将详细解析C语言和C#中的运算符优先级和结合性。 首先,运算符的优先级定义了在没有...

    运算符优先级与结合性

    在C语言和C++中,运算符的优先级和结合性是编程时必须掌握的基本概念。运算符优先级决定了表达式中不同运算的计算顺序,而结合性则规定了具有相同优先级的运算符如何组合。 首先,让我们按照优先级从高到低逐个解析...

    c++的计算器程序代码

    3. 运算符优先级别:程序使用了 `in` 和 `out` 函数来判断运算符的优先级别,这是为了确保运算符的正确计算顺序。 4. 计算函数:程序实现了 `count` 函数,用于进行计算并将计算结果入栈。 5. 主函数:程序的主函数 ...

    Turbo C运算符的优先次序

    以下是对 Turbo C 运算符优先次序的详细解释: 1. **最高优先级**: - `()` (小括号):用于分组运算,无论其内部是什么运算符,都会首先计算。 - `[]` (数组下标):用于访问数组元素。 - `.` (结构成员):用于...

    c和c++运算符优先级

    ### C和C++运算符优先级详解 ...理解并熟练掌握这些运算符的优先级和结合性对于编写高效、正确的C和C++代码至关重要。希望本文能够帮助你在实际编程中更加准确地控制表达式的计算顺序,避免因优先级错误导致的bug。

    asp运算符图片运算符图片

    位运算符在低级别的编程中很有用,它们直接操作二进制位。包括按位与"&",按位或"|",按位异或"^",左移",右移">>"。 6. **字符串连接运算符**:在ASP中,使用"&"运算符可以将两个字符串连接起来,例如`var str = ...

    C语言运算符的优先级和结合性一览表(打印版)

    运算符的优先级和结合性是C语言中非常重要的概念,决定了在表达式中运算符的执行顺序。理解这些规则对于编写正确和高效的代码至关重要。 在C语言中,运算符可以分为单目、双目和三目运算符。单目运算符只需要一个...

Global site tag (gtag.js) - Google Analytics