顺序结构
- JAVA的基本结构就是顺序结构除非特别指明,否则就按照顺序一句一句执行
- 顺序结构是最简单的算法结构
package struct;
public class ShunXuDemo {
public static void main(String[] args) {
//从上到下 依次进行
System.out.println("hello1");
System.out.println("hello2");
System.out.println("hello3");
System.out.println("hello4");
System.out.println("hello5");
//hello1
//hello2
//hello3
//hello4
//hello5
}
}
选择结构
if单选择结构
if (布尔表达式){
//如果布尔表达式为ture将执行的语句
}
equals:判断字符串是否相等
package struct;
import java.util.Scanner;
public class IfDemo01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入内容:");
String s = scanner.nextLine();
//equals:判断字符串是否相等
if (s.equals("Hello")){
System.out.println(s);
}
System.out.println("END");
scanner.close();
}
}
if双选择结构
if (布尔表达式){
//如果布尔表达式为ture将执行的语句
}
else {
//如果布尔表达式为false将执行的语句
}
案例
- 考试分数大于60就是及格,小于60就是不及格
package struct;
import java.util.Scanner;
public class IfDemo02 {
public static void main(String[] args) {
//考试分数大于60就是及格,小于60就是不及格
Scanner scanner = new Scanner(System.in);
System.out.println("请输入成绩:");
int score = scanner.nextInt();
if (score>60){
System.out.println("及格");
}
else{
System.out.println("不及格");
}
scanner.close();
}
}
if多选择结构
if (布尔表达式1){
//如果布尔表达式1为ture将执行的语句
}
else if(布尔表达式2) {
//如果布尔表达式2为ture将执行的语句
}
else if (布尔表达式3){
//如果布尔表达式3为ture将执行的语句
}
else{
//如果以上布尔表达式都不为ture将执行的语句
}
- if 语句至多有1个else语句,else 语句在所有的else if 语句之后
- if语句可以有若干个else if 语句,它们必须在else 语句之前
- 一旦其中一个else if 语句检测为true,其他的else if以及 else 语句都将跳过执行
package struct;
import java.util.Scanner;
public class ifDemo03 {
public static void main(String[] args) {
//考试分数大于60就是及格,小于60就是不及格
Scanner scanner = new Scanner(System.in);
/*
if 语句至多有1个else语句,else 语句在所有的else if 语句之后。
if语句可以有若干个else if 语句,它们必须在else 语句之前。
一旦其中一个else if 语句检测为true,其他的else if以及 else 语句都将跳过执行。
*/
System.out.println("请输入成绩:");
int score = scanner.nextInt();
if(score==100){
System.out.println("恭喜满分!");
}
else if(score<100 && score>=90){
System.out.println("A级");
}
else if(score<90 && score>=80){
System.out.println("B级");
}
else if(score<80 && score>=70){
System.out.println("C级");
}
else if(score<70 && score>=60){
System.out.println("D级");
}
else if(score<60 && score>=0){
System.out.println("不及格");
}
else{
System.out.println("成绩不合法");
}
scanner.close();
}
}
if嵌套结构
可以在一个if里面嵌套if,层级查找,一层套一层
if (布尔表达式1){
//如果布尔表达式1的值为ture将执行的语句
if (布尔表达式2){
//如果布尔表达式2的值为ture将执行的语句
}
}
switch多选择结构
-
switch case语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支
-
switch语句中的变量类型可以是:
- byte、short、int或者char
- 从Java SE 7开始
- switch支持字符串String类型
- 同时case标签必须为字符串常量或字面量
switch (expression){
case value:
//语句
break;//可选
case value:
//语句
break;//可选
//你可以有任意数量的case语句
default: //可选
//语句
}
package struct;
public class SwitchDemo01 {
public static void main(String[] args) {
//case 穿透 switch 匹配一个值
char grade = 'B';
switch (grade){
case 'A':
System.out.println("优秀");
break;//可选
case 'B':
System.out.println("良好");
break;
case 'C':
System.out.println("及格");
break;
case 'D':
System.out.println("再接再厉");
break;
case 'E':
System.out.println("挂科");
break;
default:
System.out.println("未知等级");
}
}
}
witch支持字符串String类型
package struct;
public class SwitchDemo02 {
public static void main(String[] args) {
String name = "恶魔";
//JDK7的新特性,表达式结果可以是字符串
//字符的本质还是数字
//反编译 java----class(字节码文件)----反编译(IDEA)
switch (name){
case "天使":
System.out.println("天使");
break;
case "恶魔":
System.out.println("恶魔");
break;
default:
System.out.println("干嘛!");
}
}
}