最近在研究表达式求值,看了下论坛推荐的JSEL和Aviator,感觉都挺不错, 我只要能做算术的基本运算以及一些比较、逻辑运算就好了, 它俩都已经能满足我对表达式求值的要求了。
运算符优先级刚好复习一下, 有些确实是记不得了。
优先级 运算符 结合性
1 () [] . 从左到右
2 ! +(正) -(负) ~ ++ -- 从右向左
3 * / % 从左向右
4 +(加) -(减) 从左向右
5 << >> >>> 从左向右
6 < <= > >= instanceof 从左向右
7 == != 从左向右
8 &(按位与) 从左向右
9 ^ 从左向右
10 | 从左向右
11 && 从左向右
12 || 从左向右
13 ?: 从右向左
14 = += -= *= /= %= &= |= ^= ~= <<= >>= >>>= 从右向左
说明:
移位运算符
“>>”右移;“<<”左移;“>>>”无符号右移
位逻辑运算符
“&”与;“|”或;“~”非;“^”异或
“&”与;“|”或;“~”非是基本逻辑运算,由此可以演变出“与非”、“或非”、“与或非”符合逻辑运算、“^”异或是一种特殊的逻辑运算,对它求反可以得到“同或”,所以“同或”逻辑也要“异或非”逻辑。
“&”两个运算数都为1时,结果为1,其余结果为0
“ | ”两个运算数都为0时,结果为0,其余结果为1
“ ^ “两个运算数相同时,结果为0,不同时结果为1
” ~ “0变成1,1变成0
布尔运算符:
&&:对运算数进行与运算,当所有的运算数都为true时,结果为true,否则为false;&&是短路与,意思是:当对运算数的表达式进行从左到右运算时,若遇到右运算数的值为false,则结束运算,将结果置为false
||:对运算数进行运算,当所有运算数都为false时,结果为false,否则结果为true;||是短路或,意思是:当对运算数的表达式进行从左到右的运算时,若遇到有运算数的值为ture,就结束运算,将结果置为true
!:对运算数的值进行取反运算,运算数为true,取反为false;
&:&运算符和&&一样,对运算数做与操作,不同的是它不是短路的,它会运算完所有的运算数表达式
|:|运算符和||一样,对运算数进行或操作,但它不是短路的
赋值运算符:=;+=;-=;*=;/=;&=;|=;^=;
i+=j ------ i=i+j
i-=j ------ i=i-j
i*=j ------ i=i*j
i/=j ------ i=i/j
i&=j ------ i=i&j
i|=j ------ i=i|j
i^=j ------ i=i^j
分享到:
相关推荐
Verilog HDL 运算符优先级详解 Verilog HDL 是一种基于事件驱动的硬件描述语言,用于设计和验证数字电路。Verilog HDL 运算符优先级是指在 Verilog HDL 中各种运算符的执行顺序和优先级,了解运算符优先级对编写...
C语言各运算符优先级及函数大全 C语言中的运算符优先级是程序员必须掌握的基础知识。了解运算符的优先级可以帮助程序员编写正确、简洁的代码。下面将详细介绍C语言中的运算符优先级和相关知识点。 一、数组下标...
C++运算符优先级表 C++ 运算符优先级表是一份非常重要的参考资源,对于C++开发者来说是必不可少的。本文将详细介绍C++运算符优先级表,并对每个运算符进行解释。 一、括号运算符 括号运算符的优先级最高,包括...
C语言中的运算符优先级和特殊符号使用是编程中非常重要的部分,正确理解它们的含义和规则能够帮助编程人员写出符合预期的代码,避免一些常见的错误。以下是针对C语言运算符优先级的详细列表及特殊符号的使用说明。 ...
在深入探讨C#运算符的优先级之前,我们先来明确一下什么是运算符以及优先级在编程中的作用。...因此,在学习和应用运算符优先级时,始终保持对代码质量和用户体验的关注,将使你成为一个更加优秀的程序员。
### C语言运算符优先级详解 #### 概述 在C语言编程中,理解运算符的优先级至关重要,因为这直接影响着程序的执行结果。不同的运算符根据其优先级顺序来决定表达式的计算顺序。本篇文章将详细介绍C语言中的运算符...
### 运算符优先级总结(C++) 在C++编程语言中,了解运算符的优先级对于编写高效且无误的代码至关重要。本篇文章基于提供的文件信息进行深入解析,帮助读者更好地掌握C++中的运算符优先级及其结合性。 #### 一、...
### C++运算符优先级详解 #### 一、引言 在C++编程语言中,了解运算符的优先级对于正确地构造表达式至关重要。不同的运算符根据其优先级顺序来决定表达式的计算顺序,这直接影响到程序的执行结果。本篇文章将详细...
C语言运算符优先级表 C语言运算符优先级表是指在C语言中所有运算符的优先级顺序和结合方向的总结。正确理解和掌握C语言运算符的优先级和结合方向对于编写正确和高效的C语言程序非常重要。 以下是C语言运算符的...
C语言运算符优先级
了解C语言的运算符优先级对于编写清晰、正确的代码至关重要。没有正确地理解和应用优先级,可能会导致程序的逻辑错误或性能问题。因此,在编程时,应当养成使用括号明确优先级的习惯,或者根据已经掌握的优先级表来...
非常详细的java运算符优先级表,帮助记住优先级顺序
### C语言运算符优先级和结合性 在C语言中,理解运算符的优先级和结合性对于正确地编写和解读代码至关重要。本篇文章将基于提供的C语言运算符优先级和结合性表进行详细的解析。 #### 一、运算符优先级 运算符...
C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战...
在本项目中,"Java综合程序设计——计算器(实现运算符优先级的四则混合运算)"是一个典型的软件开发任务,旨在实现一个功能丰富的计算器,包括基础的四则运算以及更复杂的数学操作如对数和平方根。这个计算器的关键...
C语言中的运算符优先级是编程时非常关键的知识点,它决定了表达式中不同运算的执行顺序。了解这些规则能帮助我们写出更清晰、更准确的代码。下面将详细解释C语言运算符的优先级和结合性,并提供相应的记忆口诀。 ...
"巧记C语言运算符优先级" C语言的运算符优先级关系复杂难记,结合编程和教学实践,给出了C语言运算符优先级的巧记规则,辅以实例加以说明。下面将详细介绍C语言的运算符优先级关系和巧记规则。 C语言共有多达45个...
C语言运算符优先级C语言运算符优先级
运算符优先级图表