表达式与运算符
表达式
表达式是由运算符和操作数组成的。+、-、*、/都是运算符,操作数包括变量、常量和表达式等。
算数运算符
-
算术运算符包括:+、-、*、/ ;
%运算符时,返回值符号与左操作数相同;
- /运算符是,左操作数不能为零;
赋值运算符
- 数据类型名称 = 数值
-遇到相同数值的时候
int aScore = 80;int bScore;bScore=aScore;
-
错误示范
i+j=k;
5=k;
重新赋值
int a = 3;a = a+2;// a += 2 == a = a + 2;
- 复合赋值运算
可以自动完成数值类型转换
a+=3; a=a+3; //算术赋值a&=3; a=a&3; //位赋值a>>=3; a=a>>3; //移位赋值a %=b-3; a=a%(b-3); //不能写作 a= a%b-3;
关系运算符
- 关系运算符:==、!=、> 、<、>=、<=;
等于、不等于、大于、小于、大于等于、小于等于;
逻辑运算符
- 逻辑与运算:真真才真其他全假
- 逻辑或运算:假假才假其他全真
- 逻辑非运算:真变假,假变真
&&与&、||与|的区别
- &&如果一开始操作数结果就是false就直接判定结果为false不回去判断第二个,&如果一开始结果为false,还是会去判断第二个的结果;&& 比& 执行效率高
- ||如果第一个操作数为true,不回去判断第二个,|如果第一个操作数为true还是会去判断另外一个操作数。 || 比 | 执行效率高
&&与||又被称为短路运算符
位运算符
- 位与(&)、位或(|)、位取反(~)、位异或(^)位与:有0即为0
- 位或:有1即为1
- 位取反:0变1,1变0
- 位异或:全0或1全1才为0
使用位运算符的时候使用单个 & 或者 |
移位运算符
- 左移位运算: “<<” 将一个
二进制数向左 移动指定的位数右边补0左边舍弃移动的位数,向左移动多少位就等于乘以2的几多少方; - 右移位运算:\”>>\”将一个二进制数向右移动相应的位数如果数值的最高位为0则补充0为1则补充1右边舍弃,右移多少位相当于除以2的多少次方;
其他运算符
- 条件运算符
- 判断公式?结果1:结果2;
如果判断公式结果为真返回结果1否则返回结果2。
条件运算符的执行顺序是从右向左, 必须要有一个变量来记录条件运算的结果 - 逗号运算符
- <表达式1>,<表达式2>,…,<表达式n>
- is运算符
- 对象 is 类型 是的话返回 true ,否返回false
运算符的优先级和结核性
简称 | 单目 | 运算符 | 数目 | 结核性 |
---|---|---|---|---|
单 | 单目 | ++,–,!,~ | 单目 | ← |
算 | 算数 | +,-,*,/,% | 双目 | → |
位 | 位移 | <<,>> | 双目 | → |
关 | 关系 | >,<,>=,<=,==,!= | 双目 | → |
逻 | 逻辑 | &&,II | 双目 | → |
条 | 条件 | ?: 三目 | ← | |
赋 | 赋值 | =,+=,-=,*=,/=,%= | 双目 | ← |
小括号优先级最高其次按照表格的优先级顺序
- 点赞
- 收藏
- 分享
- 文章举报
DesignationX发布了3 篇原创文章 · 获赞 1 · 访问量 35私信关注