发布时间:2024-03-22 13:01
今天我们学习JavaEE的流程控制语句里面的分支语句,循环语句我将放到下篇文章讲解,话不多说,上代码!
流程控制语句:通过一些语句,来控制程序的【执行】流程
1.顺序结构: 程序默认 (从上到下执行)
2.分支结构: if、switch
3.循环结构: for、while、do…while
顺序结构就是:程序默认从上到下执行
* 格式:
if (判断条件) {
语句体;
}
执行流程:
*首先计算判断条件的结果
*如果条件的结果为 true 就执行语句体
*如果条件的结果为 false 就不执行语句体
*继续执行后面的语句内容
public class Main {
public static void main(String[] args) {
int a=10;
int b=15;
if(a>b){
System.out.println("a比b大");
}
System.out.println("b比a大");
}
}
* 格式:
if (判断条件) {
语句体1;
} else {
语句体2;
}
执行流程:
* 首先计算判断条件的结果
* 如果条件的结果为 true 就执行语句体1
* 如果条件的结果为 false 就执行语句体2
* 继续执行后面的语句内容
public class Main {
public static void main(String[] args) {
int a=10;
int b=15;
if(a>b){
System.out.println("a比b大");
}else {
System.out.println("b比a大");
}
}
}
* 格式:
if (判断条件1) {
语句体1;
} else if (判断条件2) {
语句体2;
}
...
else {
语句体n+1;
}
执行流程:
* 首先计算判断条件1的值
* 如果值为true就执行语句体1;如果值为false就计算判断条件2的值
* 如果值为true就执行语句体2;如果值为false就计算判断条件3的值
...
* 如果没有任何判断条件为true,就执行语句体n+1
public class Main {
public static void main(String[] args) {
int a=10;
int b=10;
if(a>b){
System.out.println("a比b大");
}else if (a<b){
System.out.println("a比b小");
}else {
System.out.println("a等于b");
}
}
}
1. if语句中,如果大括号控制的是一条语句,大括号可以省略不写
2. if语句的()和 {} 之间不要写分号
public class Main {
public static void main(String[] args) {
int a=15;
int b=12;
if(a>b)
System.out.println("a大于b"); //一条if判断时可不写{}大括号
}
}
public class Main {
public static void main(String[] args) {
int a=6;
int b=12;
if(a>b); //加了;号表示一条语句的结束,下面的内容就不受if的控制了,不管满不满足条件都会执行
{
System.out.println("a大于b");
}
}
}
//答案在最后
switch条件语句,switch条件语句是一个很常用的选择语句,
和if 条件语句不同,它只能针对某个表达式的值做出判断,从而决定程序执行哪一个代码
格式:
switch(表达式) {
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
…
default:
语句体n+1;
break;
}
* 格式说明:
表达式:(将要匹配的值) 取值为byte、short、int、char ,JDK5以后可以是枚举,JDK7以后可以是String
case:后面跟的是要和表达式进行比较的值 (被匹配的值)
break:表示中断,结束的意思,用来结束switch语句
default:表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似
执行流程:
1.拿着表达式的值,依次和case后面的值进行匹配,匹配成功,就会执行对应的语句,在执行的过程中,遇到break就会结束
2.如果所有的case都不匹配,就会执行default里面的语句体,然后程序结束掉
public class Main{
public static void main(String[] args) {
int week =5;
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("输入的数字不正确...");
break;
}
}
}
public class Main{
public static void main(String[] args) {
int week=2;
switch(week) {
case 1:
case 2:
case 3:
case 4:
case 5:
//当week满足值1、2、3、4、5中任意一个时,处理方式相同
System.out.println("今天是工作日");
break;
case 6:
case 7:
//当week满足6、7中任意一个时,处理方式相同
System.out.println("今天是休息日");
break;
}
}
}
1.case后面的值不允许重复
2.case后面的值只能是常量,不能是变量
3.switch无论怎么变都是要先要匹配表达式,看有没有相同的,没有就执行
default, 还有看有没有break
public class Main{
public static void main(String[] args) {
int week=2;
switch (week){
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 2:
System.out.println("星期二");
break;
}
}
}
public class Main{
public static void main(String[] args) {
int week=2;
int a=1;
switch (week){
case a:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
}
}
}
public class Main{
public static void main(String[] args) {
int week=5;
switch (week){
default :
System.out.println("输入的数字有误");
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
}
}
}
jdk14+开始,switch语句对case进行了特殊支持
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner rd=new Scanner(System.in);
int week=rd.nextInt();
switch (week){
case 1,2,3,4,5:
System.out.println("工作日");
break;
case 6,7:
System.out.println("休息日");
break;
default:
System.out.println("输入有误");
break;
}
}
}
//答案在末尾喔
等级成绩答案
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner rd=new Scanner(System.in);
int a=rd.nextInt();
if(a>=90){
System.out.println("A");
}else if(a>=80&&a<=89){
System.out.println("B");
}else if(a>=70&&a<=79){
System.out.println("C");
}else if(a>=60&&a<=69){
System.out.println("D");
}else{
System.out.println("E");
}
}
}
志愿者意愿答案
import java.util.*;
public class Main{
public static void main (String[] args){
Scanner rd=new Scanner(System.in);
String a=rd.next();
switch (a) {
case "Y":
case "y":
System.out.println("Willing");
break;
case "N":
case "n":
System.out.println("Unwilling");
break;
}
}
}
文章对你有所帮助的话,欢迎给个赞或者 star,你的支持是对作者最大的鼓励,不足之处可以在评论区多多指正,交流学习