运算符优先级

Java 算术运算符号总结

我们两清 提交于 2019-11-27 10:50:43
6大运算符   1.算术运算符:(+ - * / % ) 同级顺序与数学无异议   2.赋值运算符 : =        (1)赋值运算符的优先级低于算术运算符,遵循从右到左       (2)不要将赋值运算符与相等运算符“==”混淆   3.关系运算符: (1)>、<、>=、<= (2) !=、==   4.条件运算符 : ?: 是一种三目运算符   5.逻辑运算符 : (&& ,||, !)(与或非) 同级 !> && > ||   6.位运算符:    (1) &:11为1,其余为0 |:有1为1 ^ (异或):相同为0,相异为1 特例:0^3 =0; ~ :取反   (2)移位运算符:<< >> 运算符之间的优先级比较复杂,不容易书面记忆,偏向于理解,一下几个容易错误混淆的点: 条件运算符优先于赋值运算符 eg. x>y ? x-=y : x+=y; 会报错 书面上执行的顺序其实是这样的:(x>y ? x-=y : x)+=y; 来源: https://www.cnblogs.com/fyscn/p/11360420.html

Python运算符大全

筅森魡賤 提交于 2019-11-27 07:16:18
  一、 Python的算术运算   Python的算术运算符与C语言类似,略有不同。包括加(+)、减(-)、乘(*)、除(/)、取余(%)、按位或(|)、按位与(&)、按位求补(~)、左移位(<<)、右移位(>>)、单目求反(-)、幂运算(**)、整除运算(//)、增强运算、增强矩阵乘法(@)。   增强运算是将算术运算符或逻辑运算符放到等号的左侧,与C语言的增强运算符相同。如x+=5,表示x=x+5,该种方法CPU的处理效率高于普通运算方式,且执行优先级也高些。   下面看看这些运算的例子,大家可以理解一下:   >>> 10%3   1   >>> 10//3   3   >>> 10**3   1000   >>> n=False   >>> n   False   >>> type(n)   >>> i=0   >>> i==n   True   >>> 4>>2   1   >>> 4<<2   16   >>> ~4   -5   >>> 2&4   0   >>> 2|4   6   >>> m=2   >>> m**=3   >>> m   8   矩阵乘法目前本人还没弄明白,如果以后弄明白了再补充。   二、 Python的布尔类型   在介绍比较急逻辑运算之前,需要介绍一个前面没有介绍的bool(布尔)数据类型。   布尔数据类型是用于条件判断

python运算符

元气小坏坏 提交于 2019-11-27 06:23:28
算术运算符 算术运算符 描述 实例 + 加 10 + 10 = 30 - 减 10 - 20 = -10 * 乘 10 * 10 = 200 / 除 10 / 20 = 0.5 // 取整除 返回除法的整数部分(商) % 取余数 返回除法的余数9 % 2 = 1 ** 幂 又称次方,乘方, 2 ** 3 = 8 赋值运算符 赋值运算符 描述 实例 = 简单的赋值运算符 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 = a 等效于 c = c a //= 取整除赋值运算符 c //= a 等效于 c = c // a 比较运算符 比较运算符 描述 实例 == 等于 - 比较对象是否相等 (a == b) 返回 False。 != 不等于 - 比较两个对象是否不相等 (a != b) 返回 True。 > 大于 - 返回x是否大于y (a > b) 返回 False。 < 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假

PTA 7-20 表达式转换

我们两清 提交于 2019-11-27 04:52:16
转自: https://www.cnblogs.com/yuxiaoba/p/8399934.html 算术表达式有前缀表示法、中缀表示法和后缀表示法等形式。日常使用的算术表达式是采用中缀表示法,即二元运算符位于两个运算数中间。请设计程序将中缀表达式转换为后缀表达式。 输入格式: 输入在一行中给出不含空格的中缀表达式,可包含 + 、 - 、 * 、 \ 以及左右括号 () ,表达式不超过20个字符。 输出格式: 在一行中输出转换后的后缀表达式,要求不同对象(运算数、运算符号)之间以空格分隔,但结尾不得有多余空格。 输入样例: 2+3*(7-4)+8/4 输出样例: 2 3 7 4 - * + 8 4 / + 解题思路 : 将中缀表达式转换为后缀表达式 , 遵循以下步骤: (1) 初始化两个栈:运算符栈S1和储存中间结果的栈S2; (2) 从左至右扫描中缀表达式; (3) 遇到操作数时,将其压入S2; (4) 遇到运算符时,比较其与S1栈顶运算符的优先级: (4-1) 如果S1为空,或栈顶运算符为左括号“(”,则直接将此运算符入栈; (4-2) 否则,若优先级比栈顶运算符的高,也将运算符压入S1(注意转换为前缀表达式时是优先级较高或相同,而这里则不包括相同的情况); (4-3) 否则,将S1栈顶的运算符弹出并压入到S2中,再次转到(4-1)与S1中新的栈顶运算符相比较; (5)

数字类型和运算符--小结

烈酒焚心 提交于 2019-11-27 03:44:47
数字类型和运算符–小结 1.字符常量 ‘’只能存放的一个字符(转译字符除外); 进制转换(权/位权的概念) X进制→Y进制;X→十→Y 十进制和二进制的快速专函;8421法(记住2的n次方数值直接相加) 二进制和八进制和十六进制之间的快速转换法 分组法(将2进制数分为3/4一组分别得出8进制和16进制) 2.变量 变量的三要素:声明、赋值、使用 3.数据类型 byte/short/int/long; float/double;boolean;char; 最高位为符号位(128/32768/21E/) 基础数据类型和引用数据类型 面试题 为什么float和int字节数一样,表示范围不一样?原因是小数和整数的存储形式不一样。 4.类型转化 溢出,从最小值开始循环 boolean类型不能转化 byte/short/char特例 当byte short char 之间残余运算的时候。底层都会转换成int类型来计算 字符串在参与运算中的转化问题,字符串相加是拼接操作 5.运算符 算数运算符,赋值运算符,关系运算符,逻辑运算符,位运算符(了解),三目运算符 单目运算符,多目运算符:运算符两边的操作; 赋值运算符,交换两个数的值(*使用异或来交换两个数的位置) 逻辑运算符 与 按位与& 短路与&& 或 按位或| 按位异或^(一正一错为正) 短路或||(遇到错即为错且停止) 条件运算符(三目运算符

python字符串

爱⌒轻易说出口 提交于 2019-11-27 03:40:47
字符串 string 字符串操作 字符串的内容几乎可以包含任何字符,英文字符也行,中文字符也行。 字符串既可用单引号括起来,也可用双引号括起来 假如字符串内容中包含了单引号,则可以使用双引号将字符串括起来 语法内涵双引号,用单引号括,内涵单引号,用双引号括,否则语法错误 如果内包含单引号,双引号 使用反斜线 \ 在要转义引号前使用 拼接字符串 长字符串可以使用三引号括起来 字符串紧挨在一起,python会自动拼接,如果使用逗号会变成两个字符串,但是不能真正用于拼接字符串。 + 号来拼接字符串运算符 整数转换字符串:str()是python内置类型 repr()是函数,如果拼接整数跟字符串需要先把整数转换成字符串 str()或repr() repr()另一种功能:输出会以python表达式形式来表示值 交互式模式下python会自动使用repr()函数处理该变量或表达式。 允许使用 \ 来转义长字符串来换行,转义之后不会影响输出 对于个别算法也可以转行 原始字符串 r :由于 \ 在python中特殊的,比如路径python会把看作 \ 来处理,可以在字符串前面加入r,python就不会把反斜线当成特殊字符。 或使用 \ 原始字符串包含的引号,同样需要转义 字符串的内容几乎可以包含任何字符,英文字符也行,中文字符也行。 字符串既可用单引号括起来,也可用双引号括起来

Java运算符

六月ゝ 毕业季﹏ 提交于 2019-11-27 02:45:18
运算符 自增和自减运算符 ++ :操作数值型变量,++ 放操作数左边,操作数自身加 1,返回加 1 后的结果;++ 放操作数右边,操作数自身加 1, 返回加 1 前的结果; -- :操作数值型变量,-- 放操作数左边,操作数自身减 1,返回减 1 后的结果;-- 放操作数右边,操作数自身减 1, 返回减 1 前的结果; int c = 5; int d = ++c; System.out.println(a); //6 System.out.println(d); //6 int a = 5; int b = a++; System.out.println(a); //6 System.out.println(b); //5 位运算符 & :按位与 | :按位或 ~ :按位非(键盘数字 1 左边键) ^ :按位异或 << :左移运算符 >> :右移运算符 >>> :无符号右移运算符 需要记住一点, 位运算操作的是数值在计算机存储的二进制码(补码) System.out.println(5 & 9); //1 System.out.println(5 | 9); //13 System.out.println(~-5); //4 System.out.println(5^9); //12 左移运算符是 将操作数的二进制码整体左移指定位数,左移后右边空出来的位以 0 填充 ,左移 n

python--运算符

烈酒焚心 提交于 2019-11-27 02:06:03
算数运算符 + - * / 除 **乘方 例 5**3 表示 5的3次方 += 模运算符 ( %) (将两个数相除并返回余数) // 取整除 (只返回整数部分) 逻辑运算符 == !=(<>) < <= > >= and 且 or 或 not非 in 是否包含 not in 是否不包含 优先级: ()>not>and>or print(0 or 2) x or y x为ture 返回x,x为false 返回y print(7 and 2) x and y x为ture 返回y,x为false 返回x 位运算符 & 按位与 参与运算的两个值 , 如果两个相应位都为 1, 则该位的结果为 1, 否则为 0 | 按位或 只要对应的二个二进位有一个为 1 时,结果位就为 1 ^ 按位异或 当两对应的二进位相异时,结果为 1 ~ 按位取反 对数据的每个二进制位取反 , 即把 1 变为 0, 把 0 变为 1 << 左移动运算符 高位丢弃,低位补 0 a << 2 左移 2 位 >> 右移动运算符 三元运算符 c=a if a>b else b 如果条件成立 返回 a,否则返回b 天子骄龙 来源: https://www.cnblogs.com/liming19680104/p/11337609.html

C++运算符重载与类型转换

余生长醉 提交于 2019-11-27 01:35:35
1.基本概念 当运算符被用于类类型对象时,C++语言允许我们为其指定新的含义,同时,我们也可以自定义类类型之间的转换规则。 以下是运算符重载时需要注意的几个原则: 当运算符作用于内置类型对象时,我们无法改变该运算符的含义 我们只能重载已存在的运算符,不能发明新的运算符 重载的运算符的优先级和结合律与对应的内置运算符保持一致 以下运算符不能被重载: :: .* . ? : 应使用与内置类型一致的含义 关于选择重载运算符函数作为成员还是非成员函数: 赋值(=)、下标( [ ] )、调用( ( ) )和成员访问箭头( -> )必须是成员 复合赋值运算符(+=之类)一般来说应该是成员 改变对象状态的运算符或者与给定类型密切相关的运算符,入递增、递减和解引用运算符,通常应该是成员 具有对称性的运算符可能转换任意一端的运算对象,例如算术、相等性、关系和位运算符等,通常应是非成员函数 下面以String为例演示重载各个运算符的用法。 2.输入和输出运算符 //输入输出函数只能是非成员函数,故要在类内声明为友元函数 friend std::ostream &operator<<(std::ostream &os, const String &s); friend std::istream &operator>>(std::istream &is, String &s); /*输出函数较为简单

运算符 优先级 结合性

寵の児 提交于 2019-11-27 00:11:44
C语言的运算符可分为以下几类: 1. 算术运算符 : 用于各类数值运算。包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(--)共七种。 2. 关系运算符 : 用于比较运算。包括大于(>)、小于(<)、等于(==)、 大于等于(>=)、小于等于(<=)和不等于(!=)六种。 3. 逻辑运算符 : 用于逻辑运算。包括与(&&)、或(||)、非(!)三种。 4. 位操作运算符 : 参与运算的量,按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种。 5. 赋值运算符 : 分为简单赋值(=)、复合算术赋值(+=,-=,*=,/=,%=)和复合位运算赋值(&=,|=,^=,>>=,<<=)三类共十一种。 6. 条件运算符 : 这是一个三目运算符,用于条件求值(?:)。 7. 逗号运算符 : 用于把若干表达式组合成一个表达式(,)。 8. 指针运算符 : 用于取内容(*)和取地址(&)二种运算。 9. 求字节数运算符 : 用于计算数据类型所占的字节数(sizeof)。 10. 特殊运算符 : 有括号(),下标[],成员(→,.)等几种。 C语言中,运算符的运算优先级共分为15级。1级最高,15级最低。 C语言中各运算符的结合性分为两种,即左结合性(自左至右)和右结合性(自右至左)。 优先级: 一般而言