1 顺序结构语句
程序自上而下执行。
System.out.println("1");
System.out.println("2");
System.out.println("3");
2 判断结构语句
格式一:
if ( 条件表达式 ) {
语句序列;
}
条件表达式:决定是否进行循环或判断的表达式,其结果为booolean类型,也就是条件表达式结果要么为true,要么为false。
语句序列:当条件表达式的结果为true时,执行if的语句序列,
当条件表达式的结果为false时,跳过if条件语句。
格式二:
if ( 条件表达式 ) {
语句序列1;
} else {
语句序列2;
}
当if条件表达式为true时,执行语句序列1。
当if条件表达式为false时,执行语句序列2。
与三目运算符的关系:
(1)通俗的说,三目运算是if…else的简写
(2)但是不是所有的if…else都可以转换为三目表达式,因为三目运算符运算完必须有结果,而if…else语句不一定必须有结果,不满足条件可以直接跳过if判断语句。
格式三:
if ( 条件表达式1 ) {
语句序列1;
} else if ( 条件表达式2 ){
语句序列2;
}else if( 条件表达式3 ){
语句序列3;
}else {
语句序列4;
}
只会执行其中一个语句序列。
(1)当第一个if条件表达式1为true时,则执行if里面的内容,其他则不执行;
(2)当第一个if条件表达式为false时,则继续往下进行判断,依次类推;
(3)如果所有的判断都为false,则执行最后一个else语句的内容。
3 选择结构语句
语法:
switch(表达式){
case 1:
执行语句1;
break;
case 2:
执行语句2;
break;
....
default:
执行语句;
break;
}
(1)当case后面的值满足表达式后,程序开始执行语句,会一直执行到break语句结束,或者执行到switch语句结束。
(2)无论default语句在哪个位置,都是先执行case语句后面的代码体,一直向下执行,直到遇到break。假如case语句后面所有的语句都执行完毕,也没有碰到break,就找到default语句作为结束语句。
(3)switch的表达式选择的类型
byte,short,int,char,String,枚举
(4)default后面也要有break关键字,否则default放置在前面也会按照加载顺序向下输出。
4 循环结构语句
4.1 while循环
先判断后执行,其结构如下:
while( 条件表达式 ){
执行语句;
}
需求:计算1-10的和
//(1)定义变量,一个记录和,一个记录下一个数
int sum = 0,i = 1;
//(2)需要循环结构,循环中需要进行和加上下一个数据的运算
while(i<=10){
sum = sum + i;
i++;// 让下一个数进行自增增
}System.out.println("sum="+sum);
最简单的死循环格式:
while(true){
}
4.2 do while循环语句
特点:先执行(至少执行一次),后判断。其结构如下:
do{
执行内容;
}while(条件表达式);
注意while后面的分号不要忘记。
4.3 for循环语句
4.3.1 单for循环语句
语法结构:
for( 表达式1 ; 表达式2 ; 表达式3 ){
语句序列;
}
表达式1:初始化表达式,负责完成变量的初始化,只执行一次;
表达式2:循环条件表达式,值为boolean型的表达式,指定循环条件;
表达式3:循环后操作的表达式,负责修整变量,再次执行循环条件;
(执行循环条件时,满足条件就执行语句序列,不满足就跳出for循环。)
for与while区别:
实现的效果一样,for语句中初始化表达式的变量是局部变量,for相比while更加节约内存。
4.3.2 双重for循环语句(大圈套小圈)
外循环:可以控制行数
内循环:可以控制列数。
5 跳转语句
5.1 break语句
跳转语句(用在switch语句和循环结构)
(1)当循环中遇到break语句时,则跳出循环
(2)如果当双重for循环嵌套时,break跳出的是当前break所在循环
如果想要指定跳出具体的for循环,可以给for循环取名字,break指定名字则可。Outer称为保留字,此处的outer是随机命名的,换成其他名字也是可以的。
public static void main(String[] args) {
outer:for(int x=0;x<3;x++){
inner:for(int y=0;y<4;y++){
System.out.println("y="+y);//y=0
break outer;//跳出,跳出outer循环
}
}
}
5.2 continue语句
结束本次循环,即不执行continue下面的语句,直接进入下次循环。break和continue后面都不能在写java语句(无效语句),除非将break或continue使用if括起来,使其不一定肯定执行跳出语句。