【Java的流程控制语句 02】
一、分支语句
流程控制语句
Java流程控制语句可以分为7种:
控制选择结构语句
1、if,if else
2、switch
控制循环结构语句
3、for
4、while
5、do while
改变控制语句顺序
6、break
7、continue
二、控制选择语句之if语句
//if第一种格式 int age =6; if(age>0 && age<5){ System.out.println("幼儿"); }else{ System.out.println("年龄不合法"); } //if第三种格式 int num = 15; if(num > 0 && num <5){ System.out.println("幼儿"); }else if(num >5 && num < 10){ System.out.println("儿童"); }else if(num>10 && num <18){ System.out.println("少年"); }else if(num > 18){ System.out.println("年龄不合法"); } //if第四种格式 int num1 = 30; if(num1 > 0 && num1 <5){ System.out.println("幼儿"); }else if(num1 >5 && num1 < 10){ System.out.println("儿童"); }else if(num1>10 && num1 <18){ System.out.println("少年"); }else{ System.out.println("年龄输入不合法"); }
三、控制选择语句之switch语句
/*switch语句 switch也称为多重分支,具体格式如下 switch(表达式){ case 值1: 语句 break; case 值2: 语句 break; default: 语句 Break; } 说明:表达式的值只能为:byte、short、char、int类型,Boolean、long、float,doubledo都是非法的 default语句也可以省略,一般不建议省略,并且放置在最后 */ // byte c = 1; // short c = 1; int c = 1; //char c =3; //long c =1; switch (c){ case 1: System.out.println("优秀"); break; case 2: System.out.println("差劲"); break; default: System.out.println("断掉了"); break; }
四、循环语句
1、for循环
for(表达式1;表达式2;表达式3){
语句
}
|-- 实现原理分析:表达式1先执行并且只执行一次
|-- 循环开始后,先执行一次表达式1,然后判断表达式1是否满足表达式2,满足则执行语句,不满足则终止;执行完语句以后,执行表达式3然后在判断是否满足表达式2,
满足则执行循环体语句,不满足则终止;以此循环。
2、嵌套循环
for(表达式1;表达式2;表达式3){
语句
for(表达式1;表达式2;表达式3){
语句 }
}
|-- 外层的for循环控制的是行数,内层的for循环控制的是里面的内容(例如:99乘法表,外面的for循环控制的是1到9乘法的行数,里面的for循环控制的是1*1,2*1这样的内容)
/* 循环控制语句: for循环 语法: for(表达式1;表达式2;表达式3){ 语句 } 注意: 1、表达式之间需要用分号进行分隔 2、表达式1先执行并且只执行一次,表达式2是判断语句,如果为真就开始执行循环的语句,如果为假就跳出循环停止 3、执行完语句以后,在继续执行表达式3 */ for(int i=1;i<=10;i++){ System.out.println(i); } //需求实现1+2+3+...+100 int sum=0; for(int i=1;i<=100;i++){ sum += i; } System.out.println("sum=="+sum); //需求:实现1*2*3*...*100 double product = 1; for(int i=1;i<=10;i++){ product *= i ; } System.out.println("product=="+product); /* 嵌套for循环实现正方形(实现原理:外层for循环先循环一次而内层for循环循环两次,紧接着外层for循环循环第二次紧接着内层同样循环两次) * * * * */ for(int i=1;i<=2;i++){ for(int j=1;j<=2;j++){ System.out.print(" *"); } System.out.println(); } /* 实现三角形 * * * * * * */ for(int i=1;i<=5;i++){ for(int j=1;j<=5-i;j++){ System.out.print(" "); } for(int k=1;k<=i;k++){ System.out.print("* "); } System.out.println(); } /* 打印99乘法表 for循环切记先执行表达式1,然后在执行表达式2,在表达式2为真的时候执行语句,然后在执行表达式3 */ for(int i=1;i<=9;i++){ for(int j =1;j<=i;j++){ System.out.print(" "+i+"*"+j+"="+i*j); } System.out.println(); }
/* 打印平行四边形 */ for(int i=1;i<=4;i++){ for(int j=1;j<=4-i;j++){ System.out.print(" "); } for(int k=1;k<=4;k++){ System.out.print("* "); } System.out.println(); }
四、 编写一段代码,判断一个年份是否是闰年
1、&&表示并且的意思和and一样,当两边的表达式都为true的时候,整个运算结果才为true,否则为false
2、&&表示短路,即第一个判断为false时另外一个不执行了,而&(长路)第一个判断为false时
另外一个同样也在执行
3、||和|都表示或的意思,区别在于||第一个语句判断为false时第二个语句不执行,|表示
第一个语句为false时同样第二个语句还会执行
//.用Java语言编写一个程序,判断一个年份是否是闰年。 int year=1919; Boolean b1 = year%4 == 0; Boolean b2 = year%100 != 0; Boolean b3 = year%400 ==0; if(b1&&b2||b3){ System.out.println("闰年"); }else{ System.out.println("非闰年"); }