顺序结构
是指代码是从上倒下从左到右依次运行的
分支结构
判断结构
if(逻辑值){
代码块;
}
如果逻辑值为true,执行对应的代码块,反之则不执行
if(逻辑值){
Code1;
} else {
Code2;
}
如果逻辑值为true,执行Code1;反之执行Code2
如果代码块只有一句话,{}可以省略不写。
从控制台输入数据
import java.util.Scanner; //导包语句
Scanner s = new Scanner(System.in); //输入流
int i = s.nextInt();
double d = s.nextDouble();
String s = s.nextLine();
char c = (char)s.nextInt();---强制转换,但是可能转化失败
选择结构
switch(表达式){
case 情况1:Code1;break;
case 情况2:Code2;break;
……
default:Code ; break;
}
选项的值只能是byte/short/char/int四种类型,JDK1.7开始,支持对String进行选择
如果case之后没有break,那么从匹配的case开始,依次往下执行,直到遇到break或者是switch语句结束
如果每个case之后都有break的话,case之间的顺序不影响最后的结果;即使有一个case没有break,这个时候case之间的顺序会影响最后的结果。
判断的是一个范围的时候,建议使用if-else-if结构;如果情况相对比较固定的时候,建议使用switch-case语句
循环结构
while
三个要素:循环变量,循环条件,变量改变
定义循环变量
while(判断循环变量){
代码块;
}
while语句中,如果代码块只有一句,{}也可以省略
do{
Code;
} while(逻辑值);
执行顺序:先执行Code,执行逻辑值,如果逻辑值为true,再次执行Code,如果逻辑值为false,结束循环
Code至少执行一次
for
for(循环变量的定义; 循环条件的判断;循环变量的改变){
Code ;
}
当循环变量的改变相对比较规律的时候,建议使用for循环
当不知道循环次数的时候,建议使用while循环。
while循环,循环变量定义在循环外,循环结束之后循环变量依然可以使用;for循环的循环变量是定义在for循环里边的,循环结束之后,循环变量不能继续使用
练习:
1.判断一个数是否是一个质数--一个数除了1和本身以外没有别的因数
2.循环的嵌套
3.九九乘法表
break和continue
break:用于选择或者循环语句中,表示结束当前一层语句
continue:用于循环语句中,表示跳出当前循环继续下次循环
这两个关键字必须结合相应的语句使用,单独存在没有意义,因此单独存在的时候编译报错