1 分支结构之switch语句
1.1 格式
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
……
default:
语句体n;
break;
}
1.2 格式解释
- switch表示这是一个switch语句。
- 表达式的取值:byte、short、int、char。
- JDK5以后可以是枚举。
- JDK7以后可以是String。
- case后面跟的是要和表达式进行比较的值。
- 语句体部分可以是一条或者多条语句。
- break表示中断、结束的意思,可以结束switch语句。
- default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。
1.3 执行流程
- 首先计算出表达式的值
- 其次。和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束。
- 最后,如果所有的case都和表达式的值不匹配的话,就会执行default语句体部分,然后程序结束掉。
1.4 switch的应用
package com.xuweiwei;
import java.util.Scanner;
public class SwitchDemo {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入(1-7):");
int num = input.nextInt();
switch (num) {
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
case 6:
System.out.println("星期六");
break;
case 7:
System.out.println("星期天");
break;
default:
System.out.println("你输入的数字有误");
break;
}
}
}
1.5 switch语句的注意事项
- case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的。
- default可以省略,但是不建议。
- break可以省略,但是不建议。
- default语句的位置可以是任意位置。
- switch语句的结束条件:
1.6 选择结构各自使用场景
1.6.1 if语句的使用场景
- 针对结果是boolean类型的判断。
- 针对一个范围的判断。
- 针对几个常量值的判断。
1.6.2 switch语句的使用场景
2 循环
2.1 循环的概述
- 循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体的时候,需要在核实的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环。
2.2 循环结构的组成
- 初始化语句:一条或者多条语句,这些语句完成一些初始化操作。
- 判断条件语句:这是一个boolean表达式,这个表达式能决定是否执行循环体。
- 循环体语句:这个部分是循环体语句,也就是我们要多次做的事情。
- 控制条件语句:这个部分在一次循环体结束后,下一次循环判断条件执行前执行。通过用于控制循环条件中的变量,使得循环在合适的时候结束。
2.3 for循环格式
for(初始化条件;判断条件语句;控制条件语句){
循环体语句;
}
2.4 for循环的执行流程
- ①执行初始化语句。
- ②执行判断条件语句,看其结果是true还是false。
- 如果是true,就继续执行、
- 如果是false,就退出循环。
- ③执行循环体语句。
- ④执行控制条件语句。
- ⑤回到②继续执行。
2.5 for循环的应用
package com.xuweiwei;
public class ForDemo {
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
System.out.println("Hello World");
}
}
}
package com.xuweiwei;
/**
* 在控制台输出1-10
*/
public class ForTest1 {
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
System.out.println(i + 1);
}
}
}
package com.xuweiwei;
/**
* 在控制台输出10-1
*/
public class ForTest2 {
public static void main(String[] args) {
for (int i = 10; i > 0; i--) {
System.out.println(i);
}
}
}
package com.xuweiwei;
/**
* 求出1-10的和
*/
public class ForTest3 {
public static void main(String[] args) {
int sum = 0;
for (int i = 0; i < 10; i++) {
sum += (i + 1);
}
System.out.println("1-10的和是:" + sum);
}
}
package com.xuweiwei;
/**
* 求1-100的偶数之和
*/
public class ForTest4 {
public static void main(String[] args) {
int sum = 0;
for (int i = 0; i <= 100; i = i + 2) {
sum += i;
}
System.out.println(sum);
}
}
package com.xuweiwei;
/**
* 求5的阶乘
*/
public class ForTest5 {
public static void main(String[] args) {
int jc = 1;
for (int i = 1; i <= 5; i++) {
jc *= i;
}
System.out.println("1-5的阶乘是:" + jc);
}
}
2.6 for循环结构的注意事项
- 判断条件语句的结果是一个boolean类型。
- 循环体语句如果是一条语句,大括号可以省略;如果是多条语句,大括号不能省略。建议永远不要省略大括号。
2.7 while循环的格式
初始化语句;
while(判断条件语句){
循环体语句;
控制条件语句;
}
2.8 while循环的应用
package com.xuweiwei;
public class WhileDemo {
public static void main(String[] args) {
int i = 0;
while (i < 10) {
System.out.println("Hello World");
i++;
}
}
}