Java学习 (11)Java流程控制篇(02)顺序结构&选择结构
目录
顺序结构
- Java的基本结构就是顺序结构,除非特别指明,否则逐条执行
- 顺序结构是最简单的算法结构
- 语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。
选择结构
if 单选择结构、if 双选择结构、if 多选择结构
- 判断一个东西是否可行,则采用if 语句来表示
if 单选择结构
- 语法
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入内容:");
String s = scanner.nextLine();
if (s.equals("hello")){
System.out.println(s);
}
System.out.println("输入错误!");
scanner.close();
}
/*run:
请输入内容:
hello
hello
输入错误!
*/
if 双选择结构
- 语法
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入分数:");
int i = scanner.nextInt();
if (i>=60){
System.out.println("及格");
}else {
System.out.println("不及格");
}
scanner.close();
}
/*run:
请输入分数:
60
及格
*/
/*run:
请输入分数:
59
不及格
*/
if 多选择结构
- 当存在多区间时,则会出现多级判断,使用多选择结构更合理
- 语法(当满足其中任何一个条件,程序立马停止运行并输出)
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入成绩:");
int i = scanner.nextInt();
if (i==100){
System.out.println("满分");
} else if (i>=80 && i<100) {
System.out.println("A");
} else if (i>60 && i<80) {
System.out.println("B");
} else if (i == 60 ) {
System.out.println("刚好及格");
} else if (i < 60){
System.out.println("不及格");
}else {
System.out.println("不符合规范");
}
scanner.close();
}
/*run:
请输入成绩:
88
A
*/
/*run:
请输入成绩:
22
不及格
*/
/*run:
请输入成绩:
111
不符合规范
*/
if 嵌套语句
-
使用嵌套的if...else语句是合法的,也就是说你可以在另一个if或者else if语句中使用if 或者else if'语句,你可以像if 语句一样嵌套else if...else
-
语法
if (布尔表达式1){
//如果布尔表达式1 的值为 true 则执行代码
if (布尔表达式2){
//如果布尔表达式2 的值为 true 则执行代码
}
}
//例:在大量数据中找部分数据,可以使用嵌套语句实现 二分法算法
Switch选择结构
-
switch case 语句也可以实现多选择结构
-
switch case 语句判断一个变量与一系列值中某个值是否相等,每个值为一个分支
-
语法
public static void main(String[] args) {
String name = "枫叶";
//JDK7新特性,表达式也可以是字符串
//字符的本质还是数字
//反编译 Java--Class(字节码文件) ---反编译(IDEA)
switch (name){
case "枫":
System.out.println("枫");
break;
case "枫叶":
System.out.println("枫叶");
break;
case "叶":
System.out.println("叶");
break;
default:
System.out.println("未知");
}
}
/*run:
枫叶
*/
switch 语句变量类型
- byte、short、int 或者 char
- 从 JDK7 开始,switch 支持字符串 String 类型
- case 标签必须为字符串常量或者字面量
关于 Java 反编译
-
计算机可以将Java源码编译成计算机自己能够看懂的代码,也就是Class字节码,同时也可以将字节码转变为人能够看懂的Java源码
-
Class 字节码能够让 Java 实现跨平台,在任何一台虚拟机上能够自由输出
-
在新版 IDEA 中,当编写完程序后,在左侧文件框中的 out 文件夹中则有对应的 .class 文件