分支结构
if语句
if分支:可以根据条件,选择执行某段程序
if分支的三种写法:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24// 第一种语法
if(条件表达式){
语句;
}
// 第二种语法
if(条件表达式){
语句1;
} else {
语句2;
}
// 第三种写法
if(条件表达式){
语句1;
} else if{
语句2;
}
……
else {
语句n;
}PS:如果if语句的{}中只有一行代码的情况下,{}可以不写
switch语句
使用switch时有哪些注意事项?
- 表达式类型只能是byte、short、int、char,JDK5开始支持枚举,JDK7开始支持String、不支持double、float、long。
- case给出的值不允许重复,且只能是字面量,不能是变量。
- 正常使用switch的时候,不要忘记写break,否则会出现穿透现象
switch穿透性能解决什么问题?
存在多个case分支的代码时一样时,可以把代码写道一个case块,其他case块通过穿透性能,穿透到case块即可,这样可以简化代码。
循环结构
for循环
for循环格式和执行流程是什么样的?
1
2
3
4
5
6
7
8for(变量赋值; 循环条件; 变量增值){
循环体语句;
}
// 例如
for(int i = 0; i< 3; i++){
System.out.println("Hello world");
}for循环的常见应用场景?
减少代码的重复编写,灵活的控制程序的执行
while循环
while循环的格式和执行流程是怎么样的?
1
2
3
4
5
6
7
8
9
10
11
12初始化语句;
while(循环条件){
循环体语句;
迭代语句;
}
// 例如
int i = 0;
while(i<3){
System.out.println("Hello world");
i++;
}while和for有什么区别?什么时候使用for,什么时候使用while?
- 功能上是完全一样的,for能解决的while也能解决,反之亦然。
- 使用规范:知道循环几次使用for;不知道循环几次建议使用while。
do-while循环
do-while循环的格式和执行流程是怎么样的?
1
2
3
4
5
6
7
8
9
10
11
12初始化语句;
do {
循环体语句;
迭代语句;
} while(循环条件)
// 例如
int i = 0;
do {
System.out.println("Hello world");
i++;
} w hile(循环条件)do-while循环的特点:先执行后判断
三种循环的区别小结
- for循环和while循环(先判断后执行),do-while循环(先执行后判断)
- for循环和while循环的执行流程是一模一样的,功能上无区别,for能解决的while也能解决,反之亦然。
- 使用规范:知道循环几次使用for;不知道循环几次建议使用while。
- 其他区别:for循环中,控制循环的变量只在循环中使用。while循环中,控制循环的变量在循环后还可以继续使用。
死循环
可以一直执行下去的一种循环,如果没有干预不会停下来。
写法
1
2
3
4
5
6
7
8
9
10
11for( ; ; ){
System.out.println("Hello world");
}
while(true){
System.out.println("Hello world");
}
do {
System.out.println("Hello world");
} while(true)应用场景:服务器程序
循环嵌套
- 循环中又包含循环
- 外部循环每循环一次,内部循环会完全执行完一轮。
跳转关键字:break、continue
- break:跳出并结束当前所在循环的执行。
- continue:用于跳出当前循环的当次执行,直接进入循环的下一次执行。
生成随机数:Random
- 作用:生成随机数。
- 得到0-9的随机数的实现步骤:
- 导包:告诉程序去JDK的哪个包中找Random,
import java.util.Random; - 创建随机数对象:
Random r = new Random(); - 调用随机数的功能获取随机数:
int num = r.nextInt(10);
- 导包:告诉程序去JDK的哪个包中找Random,