流程控制语句
控制方式
顺序
选择(if, if-else,多重if,switch,if嵌套)
循环(while,do-while,for,循环嵌套)
多重if结构
package imoocProj;
import java.util.Scanner;
public class ScoreAssess {
public static void main(String[] args) {
/*成绩大于等于90分,输出“优”
* 成绩大于等于80分且小于90分,输出“良”
* 成绩大于等于60分小于80分,输出“中”
* 成绩小于60分,输出“不及格” */
System.out.print("请输入成绩:");
Scanner s=new Scanner(System.in);
int score=s.nextInt();
if(score>=90) {
System.out.println("优");
}
if((score>=80)&(score<90)) {
System.out.println("良");
}
if((score>=60)&(score<80)) {
System.out.println("中");
}
if(score<60) {
System.out.println("不及格");
}
}
}
多重if语句中隐含的条件就是对上一个条件的取反,从而减少了代码量
嵌套if语句
如果满足(表达式1)的条件,继续执行下面的语句。
嵌套的if语句可以是多层的
例:
package imoocProj;
public class IntCompare {
public static void main(String[] args) {
// 判断x和y是否相等
int x=5,y=10;
if(x!=y) {
if(x>y) {
System.out.print(x+"大于"+y);
}else {
System.out.println(x+"小于"+y);
}
}
else {
System.out.print(x+"等于"+y);
}
}
}
Switch结构
switch(表达式){
case 常量表达式1:
语句1;break;
case 常量表达式2:
语句1;break;
default:
语句3;
}
switch及case后的常量可以是byte short int char String类型
例:
package imoocProj;
import java.util.Scanner;
public class WeekDemo {
public static void main(String[] args) {
/*从键盘输入1-7之间的任意数字,分别输出对应的信息
* 1-----星期一
* 2-----星期二
* 3-----星期三
* 4-----星期四
* 5-----星期五
* 6-----星期六
* 7-----星期天
*/
System.out.println("请输入1-7代表星期的数字:");
Scanner s=new Scanner(System.in);
int week=s.nextInt();
switch(week) {
case 1:
System.out.println("星期一"); break;
case 2:
System.out.println("星期二"); break;
case 3:
System.out.println("星期三"); break;
case 4:
System.out.println("星期四"); break;
case 5:
System.out.println("星期五"); break;
case 6:
System.out.println("星期六"); break;
case 7:
System.out.println("星期天"); break;
default:
System.out.println("该数字超出了1-7的范围");
}
}
}
package imoocProj;
import java.util.Scanner;
public class WeekDemo2 {
public static void main(String[] args) {
System.out.println("请输入代表星期的英文单词:");
Scanner s=new Scanner(System.in);
String week=s.next();
week=week.toUpperCase();//将输入的字符串转成大写
switch(week) {
case "MONDAY":
System.out.println("星期一"); break;
case "TUESDAY":
System.out.println("星期二"); break;
case "WEDNESDAY":
System.out.println("星期三"); break;
case "THURSDAY":
System.out.println("星期四"); break;
case "FRIDAY":
System.out.println("星期五"); break;
case "SATURDAY":
System.out.println("星期六"); break;
case "SUNDAY":
System.out.println("星期天"); break;
default:
System.out.println("单词输入错误");
}
}
}
编程练习
给定一个字符变量,判断该变量是否为元音字母并输出。
任务
1、定义一个字符变量ch并初始化
2、使用switch结构判断是否为元音字母,如果是元音字母则输出如效果图所示的内容,如果不是元音字母则输出:不是元音字母
提示:
元音字母为a、e、i、o、u
public class CharDemo {
public static void main(String[] args) {
char a='a';//定义一个字符变量并初始化
switch(a){
case 'a':
System.out.println("元音字母a");break;
case 'e':
System.out.println("元音字母e");break;
case 'i':
System.out.println("元音字母i");break;
case 'o':
System.out.println("元音字母o");break;
case 'u':
System.out.println("元音字母u");break;
default:
System.out.println("不是元音字母");
}//使用switch结构判断是否为元音字母,并输出对应的信息
}
}