一,顺序结构:
按照代码的先后顺序执行,即写在前面的先执行,写在后面的后执行
int a=1;
int b=2;
int c=3;
Systen.out.println(a);
Systen.out.println(b);
Systen.out.println(c);
二,条件结构:
1if语句
if (条件表达式){
一条或者多条语句 //条件成立后执行
}
2if-else语句
如果有钱
我就去玩
否则
我就不去
案例
if(a>b){
System.out.println("我赢了");
}else{
System.out.println("我输了");
}
3if-else-if语句
可以对更多的条件进行判断
if(条件1){ //如果1成立就执行1
语句块1
}else if(条件2){ //如果2成立就执行2
语句块2
}......
else{ //如果n成立就执行n
语句块n
}
案例
int a=1;
int b=2;
int c=3;
if(a>b&&a>c){
max=a;
}else if(b>a&&b>c){
max=b;
}else{
max=c;
}
System.out.println(max);
选择语句的嵌套
指在if语句中再嵌套if语句,一般用于较复杂的分支语句中。
if(条件1){
if(条件2){
语句1}
else if{
语句2
}
}else{
if(条件3){
语句3}
else{
语句4
}
}
案例
int score=85;
if(score>=60){
if(score>=80){
if(score>=90){
System.out.println("学生成绩是优秀");}
else
System.out.println("学生成绩是良好");}
else
System.out.println("学生成绩是及格");}
else
System.out.println("学生成绩是不及格");
switch语句:
1,switch语句属于多分支结构,可以替代复杂的if-else-if语句,支持的表达式数据类型:byte,short,int,char.JDK5以后可以是枚举,JDK7以后可以是String
2,case后面是常量,多个case后面的值不能出现相同的
3,default功能与执行位置无关,可写可不写,建议写在最后,当所有case项没有匹配上就会执行。
4,break结束整个switch语句,如果没有break,会发生case穿透,这种现象可以利用。
5switch语句结束条件:当遇到break就结束了或者执行到末尾结束。
形式:
switch(常量/变量){
case值:
执行的代码
break; //退出单层循环
case值:
执行的代码
break;
case值:
执行的代码
break;
case值:
执行的代码
break;
default: //如果前面没有执行一个,就执行这个
执行的代码
break;
}
案例:
int score=80;
int rank=score/10; //换到10以内方便操作
switch(rank){
case 10:
case 9:
System.out.println("优秀"); //90到100为优
break;
case 8:
case 7:
System.out.println("良好"); //70到80为良好
break;
case 6:
System.out.println("及格"); //60到70为及格
break;
default:
System.out.println("良好"); //60以下不及格
break;
}
三,循环结构
1,for循环:一般在循环次数已知的情况下。for循环比while和do-while更复杂,也更灵活。
for(初始表达式语句;判断条件语句;控制条件语句){
循环语句;}
案例:输出1-100
int i;
for(i=1;i<101;i++){
System.out.println(i);}
2,while循环
先判断,判断正确后执行,如果第一次循环条件就不满足的话,那么直接跳出循环。
while(判断条件语句){
循环体语句;
控制条件语句;
}
案例:求1-100的和
int i=1;
int sum=0;
while(i<=100){
sum+=i;
i++; //如果没有i++,则i一直都是1,那么循环将无限制执行下去,成为死循环
}
System.out.println(sum);
3,do-while循环
先把do里面的代码执行一次,然后再判断while里面是否为ture,如果是,返回执行do里面的,如不是,跳出来
do{
循环体语句;
控制条件语句;
}
while(判断条件语句);{
}
案例:输出1-100
int i=1;
do{
System.out.println(i); //输出1-100
i++;}
while(i<=100);{
System.out.println(i); //循环变量值,卡在不满足条件的那个值,101
}
while
和do-while的区别:while是先判断后执行。do-while是先执行后判断即使一开始循环就不成立,也会执行一次。
四,控制跳转语句:
break(中断)
1,在选择结构switch中
2,在循环语句中
作用:用于单层循环
continue(继续)
跳出一次循环,执行下一步操作
return(返回)
就是一个退出的方法