编程语言对比 运算符

版权声明:本文为作者创作,转载请注明出处:http://blog.csdn.net/claroja,如有商业用途请联系QQ:63183535。 https://blog.csdn.net/claroja/article/details/87784263

算术运算符

运算 语法 python javascript java c
加法 x + y + + + +
减法 x - y - - - -
除法 x / y / / / /
乘法 x * y * * * *
求余 x % y % % % %
求幂 x ** y ** **
自增 x++ ++ ++ ++
自减 x–

python中没有自增,自减的运算符,但是python多了一个//求整的运算符.
java和c中没有求幂的运算符

用1来取余,可以用来判断一个数是否是整数.

赋值运算符

运算 语法 python javascript java c
赋值 x=y = = = =
运算赋值 x+=y += += += +=

赋值运算符是在=前面添加普通运算符

比较运算符

运算 语法 python javascript java c
等于 x==y == == == ==
不等于 x!=y != != != !=
大于 x>y > > > >
小于 x<y < < < <
大于等于 x>=y >= >= >= >=
小于等于 x<=y <= <= <= <=

javascript中多了===绝对等于(值和类型均相等)!==绝对不等于不绝对等于(值和类型有一个不相等,或两个都不相等),比如5==="5"False5===5True

位运算符

按位运算符是把数字看作二进制来进行计算的。

运算 语法 描述 python javascript java c
按位与( AND) x&y 对于每一个比特位,只有两个操作数相应的比特位都是1时,结果才为1,否则为0 & & & &
按位或(OR) a|b 对于每一个比特位,当两个操作数相应的比特位至少有一个1时,结果为1,否则为0 | | | |
按位异或(XOR) a ^ b 对于每一个比特位,当两个操作数相应的比特位有且只有一个1时,结果为1,否则为0 ^ ^ ^ ^
按位非(NOT) ~ a 反转操作数的比特位,即0变成1,1变成0 ~ ~ ~ ~
左移(Left shift) a << b 将 a 的二进制形式向左移 b (< 32) 比特位,右边用0填充 << << << <<
有符号右移 a >> b 将 a 的二进制表示向右移 b (< 32) 位,丢弃被移出的位 >> >> >> >>
无符号右移 a >>> b 将 a 的二进制表示向右移 b (< 32) 位,丢弃被移出的位,并使用 0 在左侧填充 >>> >>>

python和c都没有提供无符号右移

逻辑运算符

运算 语法 描述 python javascript java c
逻辑与 a&&b 同时为真 and && && &&
逻辑或 a|| 一个为真 or || || ||
逻辑非 !a ! ! ! !

python和其它三种编程语言不同

成员访问运算符

点运算符.和箭头运算符->都可以用来访问成员.
.通常用于引用
->用于指针
ptr->mem等价于(*ptr).mem

强制转换

C++ 类型转换
python类型转换
java类型转换
C语言类型转换

C++和python中支持type()

C语言和java中支持 (type) expr

其它

运算 语法 描述 python javascript java c
身份运算符 判断是否同一个地址引用 is
身份运算符 判断是否同一个地址引用 is not
类型运算符 判断类型

没有更多推荐了,返回首页