12、选择结构
选择结构
1、if单选择结构
public class IfSingle {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入内容:");
if ( sc.hasNextLine() ) {
String s = sc.nextLine();
if ( s.equals("Hello") ) {
System.out.println(s);
} else {
System.out.println("End");
}
sc.close();
}
}
}
2、if双选择结构
public class IfDouble {
public static void main(String[] args) {
//考试分数大于60就是及格,小于60分就是不及格
Scanner sc = new Scanner(System.in);
System.out.println("请输入分数:");
if ( sc.hasNextInt() ) {
int score = sc.nextInt();
if ( score >= 60 ) {
System.out.println("恭喜你,及格了,你的分数是:" + score);
} else {
System.out.println("不好意思,你的分数为:" + score + ",不及格");
}
}
sc.close();
}
}
3、if多选择结构
注意
- if 语句至多有一个 else 语句,else 语句在所有的 else if 语句之后
- if 语句可以有若干个 else if 语句,它们必须在 else 语句之前
- 一旦其中一个 else if 语句检测为 true,其它的 else if 以及 else 语句都将跳过执行
public class IfMany {
public static void main(String[] ags) {
//考试分数大于90就是优秀,大于80就是良好,大于70就是一般,大于60就是及格,小于60分就是不及格
Scanner sc = new Scanner(System.in);
System.out.println("请输入分数:");
int score = sc.nextInt();
if ( score >= 90 && score <= 100 ) {
System.out.println("你的成绩为:" + score + ",评级为优秀");
} else if ( score >= 80 && score < 90 ) {
System.out.println("你的成绩为:" + score + ",评级为良好");
} else if ( score >= 70 && score < 80 ) {
System.out.println("你的成绩为:" + score + ",评级为一般");
} else if ( score >= 60 && score < 70 ) {
System.out.println("你的成绩为:" + score + ",评级为及格");
} else if ( score >= 0 && score < 60 ) {
System.out.println("你的成绩为:" + score + ",评级为不及格");
} else {
System.out.println("你输入的分数不合法!");
}
sc.close();
}
4、嵌套的if结构
public class IfNesting {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个1~100之间的数");
int num = sc.nextInt();
if ( num >= 1 && num < 50 ) {
System.out.println(num + "在0~50间");
if ( num >= 1 && num <= 25 ) {
System.out.println(num + "在0~25间");
} else {
System.out.println(num + "在25~50间");
}
} else if ( num >= 50 && num <= 100 ){
System.out.println(num + "在50~100间");
if ( num >=50 && num <= 75 ) {
System.out.println(num + "在50~75间");
} else {
System.out.println(num + "在75~100间");
}
} else {
System.out.println("你输入的数据不在1~100间");
}
sc.close();
}
}
5、switch多选择结构
public class Switch {
public static void main(String[] args) {
//case穿透
//switch:匹配一个具体的值
Scanner sc = new Scanner(System.in);
System.out.println("请输入你的等级(A~E):");
String grade = sc.nextLine();
switch ( grade ) {
case "A":
System.out.println("你的等级为" + grade + ",优秀");
break;
case "B":
System.out.println("你的等级为" + grade + ",良好");
break;
case "C":
System.out.println("你的等级为" + grade + ",一般");
break;
case "D":
System.out.println("你的等级为" + grade + ",及格");
break;
case "E":
System.out.println("你的等级为" + grade + ",不及格");
break;
default:
System.out.println("输入不合法!");
}
}
}
6、总结
JDK7的新特性,表达式结果可以是字符串
字符的本质还是数字
反编译 java---class(字节码文件)---反编译(IDEA)