选择结构和运算符
一、运算符(就是连接常量或者变量的一种符号)
1.1算数运算符
- 分类:+ - * / % ++ --
- 注意事项:注意事项 : 两个整数相除得到的是整数,想得到小数 必须有浮点数(小数)参与运算
- /和%的区别: /得到的是两个数的商 %得到的是两个的余数
- 字符串做参与运算,其实就是字符串的拼接,然后得到一个新的字符串
- ++和--的使用:
- 单独使用的时候比较多,++ -- 不管是在前或后,对结果没有影响的
- 参与其他操作的时候
- ++ -- 在变量的前面的时候先对其自身进行+1或者是-1 然后在参与运算
- ++ -- 在变量的后面的时候先参与运算,然后在自身进行+1或者是-1;
- 注意 : 只能变量做++/--
1.2赋值运算符
- 分类基本的为= ,扩展的赋值运算符 += -+ *= /= %=
- 扩展规则:将运算符左边的变量和右边的值做运算,在把结果赋值给左边的变量
- 注意事项:有强制类型转换的作用
1.3关系运算符(也叫做比较运算符)
- 分类:== > >= < <= !=
- 用关系运算符连接起来的式子叫做关系表达式,结果是一个boolean类型的值
- 注意事项; = 它是赋值操作 ==它是判断两个数是否相等
1.4逻辑运算符(连接关系表达式)
- 分类: & | ! && || ^
- &&
- 特点 :有false则false
- 具有短路作用,当左边为false时候右边不执行
- &
- 特点 :有false则false
- 不具备短路做用,不管左边为false还是true右边都执行
- ||
- 特点 : 有true则true
- 具备短路做用,当左边为true的时候,右边不执行
- |
- 特点 : 有true则true
- 不具备短路做用,不管左边为false还是true,右边都执行
- ! 特点 :非false则true,非true则false
- ^ 特点:相同为false,不同为true,举例男女关系
1.5三元运算符(三目运算符)
- 格式: 关系表达式 ? 表达式1 : 表达式2 ;
- 执行流程: 首先计算关系表达式的值是true还是false 如果是true就执行值1; 如果为false就执行值2;
二、流程语句
2.1 顺序结构语句
- 代码从上往下依次执行
2.2选择结构语句
- if语句
- 第一种格式
-
if(关系表达式){ 语句体; }
- 第二种格式
-
if(关系表达式){ 语句体1; }else { 语句体2; }
- 第三种格式
-
if(关系表达式1){ 语句体1; }else if(关系表达式2){ 语句体2; }else if(关系表达式3){ 语句体3; }.....else{ 语句体n+1; }
- switch语句
-
switch(表达式){//表达式的值可以是 byte char short int jdk5:枚举 jdk7:字符串 case 值1: 语句体1; break;//中断 case 值2: 语句体2; break; ....... default://相当于if语句中 else 语句体n+1; break; }
2.3循环结构语句
- for循环语句
-
for(初始化语句;判断条件语句;控制条件语句){ 循环体语句; } 1 初始化语句 2 计算判断条件语句的值 true或者false 如果false 直接结束循环 如果是true 往下执行 3 执行循环体语句 4 执行控制条件语句 5 回到第二步 *
-
- while循环语句
-
* while(判断条件语句){ * 循环体语句; * } * * 扩展格式 * 初始化语句; *while(判断条件语句){ * 循环体语句; * 控制条件语句; * }
-
- do...while循环语句
-
* 初始化语句; * do{ * 循环体语句; * 控制条件语句; * }while(判断条件语句);
-