目录
学分支语句前先学习一下数据输入语句
1.数据输入
1.1数据输入概述
1.2Scanner使用的基本步骤
(1)导包
import java.util.Scanner;
导包的动作必须出现在类定义的上边
(2)创建对象
Scanner sc = new Scanner(System.in);
上面这个格式里面,只有sc是变量名,可以边,其他的都不允许变。
(3)接收数据
int i = sc.nextInt();
上面这个格式里面,只有i是变量名,可以变,其他的都不允许变。
例子:
import java.util.Scanner;
public class test01 {
public static void main(String[] args) {
//创建对象
Scanner sc = new Scanner(System.in);
//接收数据
int x = sc.nextInt();
//输出数据
System.out.println("x = "+x);
}
}
2.流程控制
2.1流程控制概述
2.2流程控制语句分类
顺序结构
分支结构(if,switch)
循环结构(for,while,do......while)
2.3顺序结构
顺序结构是程序中最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。
顺序结构执行流程图:
3.if语句
3.1if语句格式1
格式:
if(关系表达式){
语句体;
}
执行流程:
(1)首先计算关系表达式的值。
(2)如果关系表达式的值为true就执行语句体。
(3) 如果关系表达式的值为false就不执行语句体。
(4)继续执行后面的语句内容。
public class test01 {
public static void main(String[] args) {
//定义三个变量
int a = 10;
int b = 20;
int c = 10;
//需求:判断a和b的值是否相等,如果相等,就在控制台输出:a=b
// 判断a和c的值是否相等,如果相等,就在控制台输出:a=c
if(a==b){
System.out.println("a=b");
}
if(a==c){
System.out.println("a=c");
}
System.out.println("结束");
}
}
3.2if语句格式2
格式:
if(关系表达式){
语句体1;
}else{
语句体2;
}
执行流程:
(1)首先计算关系表达式的值。
(2)如果关系表达式的值为true就执行语句体1。
(3)如果关系表达式的值为false就执行语句体2。
(4)继续执行后面的语句内容。
3.3if语句格式3
格式:
if(关系表达式){
语句体1;
}else if{
语句体2;
}
...
else{
语句n+1;
}
执行流程:
(1)首先计算关系表达式1的值。
(2)如果值为true就执行语句体1,如果值为false就计算关系表达式2的值 。
(3)如果值为true就执行语句体2,如果值为false就计算关系表达式3的值 。
(4)...
(5)如果没有任何关系表达式为true,就执行语句体n+1.
4.switch语句
4.1switch语句格式
格式:
switch (){
case值1:
语句体1;
break;
case值2:
语句体2;
break;
...
default:
语句体n+1;
break;
}
格式说明:
表达式:取值为byte,int,short,char,JDK5以后可以是枚举,JDK7以后可以是String。
case:后面跟的是要和表达式进行比较的值。
break:表示终端,结束的意思,用来结束switch语句。
default:表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。
执行流程:
(1)首先计算表达式的值。
(2)依次和case后面的值进行比较,如果有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束。
(3)如果所有的case后面的值和表达式的值都不匹配,就会执行default里面的语句体,然后程序结束掉。