顺序结构
- java的基本结构就是顺序结构,除非特别指明,否则就按照顺序逐句执行
- 顺序结构是最简单的算法结构
- 语句与语句之间,框与框之间是按从上到下的顺序进行的,他是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构
选择结构
if单选择结构
if(布尔表达式)
{
//如果布尔表达式为true将执行的语句
}
代码演示:
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();
if(s.equals("hello") ) { //equals:判断字符串是否相等
System.out.println(s);
}
System.out.println("end");
scanner.close();
}
}
输出结果:
if双选择结构
if(布尔表达式){
//如果布尔表达式的值为true
}else{
//如果布尔表达式的值为false
}
代码演示:
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();
}
}
输出结果:
请输入成绩:
60
及格
if多选择结构
if(布尔表达式1){
//如果布尔表达式1的值为true执行代码
}else if(布尔表达式2){
//如果布尔表达式2的值为true执行代码
}else if(布尔表达式3){
//如果布尔表达式3的值为true执行代码
}else{
//如果布尔表达式都不为true执行代码
}
代码演示:
import java.util.Scanner;
public class ifDemo03 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
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语句至多有1个else语句,else语句在所有的else if语句后。
if语句可以有若干个else if语句,它们必须在else语句之前。
一旦其中一个else if语句检测为true,其他的else if以及else语句都将跳过执行。
嵌套的if结构
使用嵌套的if...else语句是合法的,也就是说你可以在另一个if或者else if语句中使用if或者else if语句。
if(布尔表达式1){
//如果布尔表达式1的值为true执行代码
if(布尔表达式2){
//如果布尔表达式2的值为true执行代码
}
}
代码演示:
public class ifDemo04 {
public static void main(String[] args) {
int x = 30;
int y = 10;
if( x == 30 ){
if( y == 10 ){
System.out.print("X = 30 and Y = 10");
}
}
}
}
输出结果:
X = 30 and Y = 10
Switch多选择结构
- 多选择结构还有一个实现方式就是switch case语句
- switch case语句判断一个变量与一系列值中某个值是否相等,每一值称为一个分支
switch(expression){
case value :
//语句
break; //可选
case value :
//语句
break; //可选
//你可以有任意数量的case语句
default : //可选
//语句
}
switch case语句有如下规则:
- switch 语句中的变量类型可以是: byte、short、int 或者 char。
- switch 语句可以拥有多个 case 语句。每个 case 后面跟一个要比较的值和冒号。
- case 语句中的值的数据类型必须与变量的数据类型相同,而且只能是常量或者字面常量。
- 当变量的值与 case 语句的值相等时,那么 case 语句之后的语句开始执行,直到 break 语句出现才会跳出 switch 语句。
- 当遇到 break 语句时,switch 语句终止。程序跳转到 switch 语句后面的语句执行。case 语句不必须要包含 break 语句。如果没有 break 语句出现,程序会继续执行下一条 case 语句,直到出现 break 语句。
- switch 语句可以包含一个 default 分支,该分支一般是 switch 语句的最后一个分支(可以在任何位置,但建议在最后一个)。default 在没有 case 语句的值和变量值相等的时候执行。default 分支不需要 break 语句。
public class switchDemo01 {
public static void main(String[] args) {
char grade = 'A';
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;
default: //匹配不成功则会选择默认
System.out.println("输入错误");
}
System.out.println("你的等级是 " + grade);
}
}
输出结果:
优秀
你的等级是A
- 若不加breal语句,则会造成case穿透,从当前 case 开始,后续所有 case 的值都会输出。
- 如果当前匹配成功的 case 语句块没有 break 语句,则从当前 case 开始,后续所有 case 的值都会输出,如果后续的 case 语句块有 break 语句则会跳出判断。
从 Java SE 7 开始,switch 支持字符串 String 类型了,同时 case 标签必须为字符串常量或字面量。
代码演示:
public class switchDemo02 {
public static void main(String[] args) {
String name = "恁爹";
switch (name){
case "尼玛":
System.out.println("对了");
break;
case "恁爹":
System.out.println("找尼玛去");
break;
default:
System.out.println("弄啥嘞");
}
}
}
//字符的本质还是数字
输出结果:
标签:语句,case,day5,成神,System,else,小白,println,out From: https://www.cnblogs.com/skyang-/p/17155468.html找尼玛去