分支结构
1.顺序结构
>程序从上往下的顺序执行
2.分支结构:
if-else
switch-case
3.循环结构:
while(){}
do{}while()
for(;;){}
1.条件判断:
①if(条件表达式){ }
②if(条件表达式){
//执行的语句1;
}else{
//执行的语句2;
}
③if(条件表达式1){
//执行的语句1;
}else if(条件表达式2){
//执行的语句2;
}else if( 条件表达式3){
//执行的语句3;
}...
}else{
//执行的语句;
}
【注意】
1.一旦满足某个条件表达式,则进入其执行语句块执行,执行完毕,跳出当前的条件判断结构,不会执行其以下的条件结构语句。
2.如果诸多个条件表达式之间为“互斥”关系,多个结构可以上下调换顺序
如果诸多个条件表达式之间为“包含”关系,要求条件表达式范围小的写在范围大的上面。
2.选择结构
switch(变量){
case 值1:
//break;
case 值2:
//break;
...
default:
break;
}
【注意】
1.变量可以为如下的数据类型:byte short int char 枚举 String
2.case后只能填写变量的值,不能写范围。
3.default是可以省略的。并且其位置也是灵活的,但是通常将其放在case语句之后。
4.一旦满足某个case语句,则进入执行其操作。直至遇到break或者程序终止。
5.若要判断的语句的条件满足switch变量的数据类型,且值不多的情况下,建议选择switch-case .
除此之外,选择if-else.
循环结构
1.格式:
①初始化条件
②循环条件
③迭代部分
④循环体
for(①;②;③){
④
}
①
while(②){
④
③
}
①
do{
④
③
}while(②);
注:1.不同的循环结构之间可以相互转换
2.while和do-while的区别:do-while程序至少会执行一次
2.嵌套循环:循环结构还可以声明循环。让内层循环结构整体充当外层循环的循环体。
若外层循环执行m次,内层循环执行n次,整个程序执行m*n次。
【题目】
******
******
******
for(int i = 0;i < 3;i++){
for(int j = 0;j < 6;j++){
System.out.print("*");
}
System.out.println();
}
说明:外层循环控制行数,内层循环控制列数
【例题】1.九九乘法表 2.输出100内的质数。(两种)
3.无限循环结构
for(;;){
...
if( ){
break;
}
...
}
或者
while(true){
...
if( ){
break;
}
...
}
往往我们在无限循环结构内部提供循环的终止条件,使用break关键字。否则,此循环将无限制的执行下去,形成死循环!
死循环是我们要避免的。
break & continue
break:
>使用switch-case结构或者循环结构中
>在循环结构中,一旦执行到break,就跳出当前循环。
continue:使用在循环结构中
>一旦执行到continue,就跳出当次循环。
for(int i = 1;i <= 10;i++){
if(i % 4 == 0){
//break; //123
continue; //123567910
}
System.out.print(i);
}
在嵌套循环中,使用带标签的break和continue。
label:for(int i = 1;i < 5;i++){
for(int j = 1;j <= 10;j++){
if(j % 4 == 0){
//break;
//continue;
//break label;
continue label;
}
System.out.print(j);
}
System.out.println();
}