算数运算符: + - * / %(模) ++ --
比较运算符:< > <= >= ==(等于) !=(不等于)
赋值运算符:= += *= -= /= %=
逻辑运算符:!(非) &&(短路与) ||(短路或)
位运算:&(与) |(或) ^(异或) ~(取反) <<(左移) >> (右移) >>>(无符号右移)
特殊运算符:? :(三(目)元运算符)
算数运算符用法:
和我们以前学的一样
而%(模)运算则是我们小学学的求余数,就是两数相处,除不尽的部分就是余数
例子:17 / 4 = 4.......1;
=====================================================
++(自增):在自身的基础上+1;
++可以在变量的前面写 也可以在 变量的后面写
++在前 代表着 变量 先 +1 再进行 其他运算
++在后 代表着 先进行运算 后再 +1
--(自减):在自身的基础上-1;
--可以在变量的前面写 也可以在 变量的后面写
--在前 代表着 变量 先 -1 再进行 其他运算
--在后 代表着 先进行运算 后再 -1
比较运算符
就是比大小返回布尔值
运算符 | 描述 | 例子 |
---|---|---|
== | 检查如果两个操作数的值是否相等,如果相等则条件为真。 | (A == B)为假。 |
!= | 检查如果两个操作数的值是否相等,如果值不相等则条件为真。 | (A != B) 为真。 |
> | 检查左操作数的值是否大于右操作数的值,如果是那么条件为真。 | (A> B)为假。 |
< | 检查左操作数的值是否小于右操作数的值,如果是那么条件为真。 | (A <B)为真。 |
>= | 检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真。 | (A> = B)为假。 |
<= | 检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真。 | (A <= B)为真。 |
逻辑运算符
短路与(&&)短路或(||)非(!)与(&)或(|)
&和&&的区别
-
&的两边可以是整数用作位运算 ,&&不可以。
-
&&如果前面的条件能够判断出最终结果那么后面的条件不在执行&即使前面的条件能够判断出最终结果&后面的条件也执行。
图中&&在判断前面为false后面的c++ 就没有执行,但&继续执行了后面语句。
位运算
& | 与 | 两个位都为1时,结果才为1 |
---|---|---|
| | 或 | 两个位都为0时,结果才为0 |
^ | 异或 | 两个位相同为0,相异为1 |
~ | 取反 | 0变1,1变0 |
<< | 左移 | 各二进位全部左移若干位,高位丢弃,低位补0 |
>> | 右移 | 各二进位全部右移若干位,对无符号数,高位补0,有符号数,各编译器处理方法不一样,有的补符号位(算术右移),有的补0(逻辑右移) |
三元运算符
x?y:z 如果x=true,则结果为y,否则结果为z