- 层级之间必须缩进(Tab:一个制表位)。
- 一行只写一句代码
- 单行注释:
- 多行注释:
- 文档注释:(生成外部文档:javadoc -d XXX.java)
注:注释不参与编译
选择结构概念:根据已知条件进行逻辑判断,满足条件后执行相应操作。
基本if选择结构-
语法:
if(布尔表达式){ //代码块 }- 执行流程:
- 对布尔表达式进行判断。
- 结果为true,则先执行代码块,在执行后续代码。
- 结果为false,则跳过代码块,直接执行后续代码。
- 执行流程:
-
语法:
if(布尔表达式1){ //代码块1 }else if(布尔表达式2){ //代码块2 }else if(布尔表达式3){ //代码块3 }else{ //代码块4 }-
执行流程:
-
表达式1为true,则执行代码块1,再退出整个结构。
-
表达式2为true,则执行代码块2,再退出整个结构。
-
表达式3为true,则执行代码块3,再退出整个结构。
-
以上均为false,则执行代码块4,再退出整个结构。
注意:相互排斥,有一个为true,其他均不再执行,适合区间判断,但要保证条件顺序(从大到小,从小到大)
-
-
-
语法:
if(外层表达式){ if(内层表达式){ //内层代码块1 }else{ //内层代码块2 } }else{ //外层代码块 }-
执行流程:
- 当外层条件满足时,在判断内层条件。
-
注意:、
-
一个选择结构中,可嵌套另一个选择结构。
-
嵌套格式正确的情况下,支持任意组合。
-
-
-
语法:
switch(表达式){ case 值1: 语句1;break; case 值2: 语句2;break; default: 未满足时的逻辑代码; }-
可判断的类型:
byte、short、int、char、String(JDK7+)
-
执行流程:
- 如果变量中的值等于值1,则执行语句1。
- 如果变量中的值等于值2,则执行语句2。
- 如果变量中的值没有匹配的case值时,执行default中的逻辑代码。
-
注意:当匹配的case执行后,没有break关键字时,不会自动退出整个结构,而是继续向下执行。
-
break关键字可在匹配的case执行后,跳出整个结构。
-
使用等值判断。
-
概念:通过某个条件,重复的执行一段逻辑代码。
while循环- 语法:
while(布尔表达式){
//逻辑代码(循环操作)
}
- 执行流程
- 先对布尔表达式进行判断,结果为true,则执行逻辑代码。
- 本次执行完毕后,再次进行判断,结果仍旧为true,则再次执行逻辑代码
- 直至布尔表达式的结果为false时,才会退出循环结构,执行后续代码。
需求:打印100遍“Hello World”。
注意:循环有四部分组成。
使用while的案例-
计算1+2+3+4+5…+98+99+100的总和。
public class SumCount{ public static void main(String[] args){ int sum=0;//定义初始变量 int i=1;//定义用来判断的变量 while(i<=100){//循环条件:小于等于100 sum+=i;//循环操作:累加 i++;//迭代部分 } System.out.println("1到100总和为:"+sum); } } -
计算1~100之间,所有偶数的和。
package com.zhoukali; public class SumEvenCount{ public static void main(String[] args){ int sum=0; int i=2; while(i<=100){ sum+=i; i+=2; } System.out.println("1~100之间所有偶数的和为:"+sum); } }
- 语法:
do{
逻辑代码(循环操作)
}while(布尔表达式);
- 执行流程:
- 先执行一次循环操作之后,在进行布尔表达式的判断。
- 如果结果为true,则再次执行循环操作。
- 如果结果为false,才会退出循环结构,执行后续代码。
- 语法:
for(初始部分;循环条件;迭代部分){
//循环操作
}
-
执行流程:
-
首次执行初始部分(仅一次)
-
对布尔表达式进行判断,结果为true,则执行逻辑代码。
-
本次执行完毕后,执行迭代部分,在此判断,结果仍旧为true,则再次执行逻辑代码
-
直至布尔表达式的结果为false时,才会退出循环结构,执行后续代码
-
- 需求:打印100遍“hello world”。
- 特点:首次既有入口条件,先判断、再执行,适用于循环次数明确的情况。
break:终止、跳出switch、循环结构。
continue 嵌套循环概念:循环里嵌套一个循环



