一:键盘录入
1.1键盘录入的基本格式
a.导包:
格式:import java.util.Scanner;
b.创建键盘录入对象:
格式: Scanner sc=new Scanner(System.in);
c.通过对象获取数据
格式:int x=sc.nextInt();
案例演示:
//1.导包
import java.util.Scanner;
public class boke1 {
public static void main(String[] args) {
//求三个数的最大值
//2.创建键盘录入对象
Scanner scanner = new Scanner(System.in);
System.out.println("请输入第一个数字");
//通过对象获取数据
int num1 = scanner.nextInt();
System.out.println("请输入第二个数字");
int num2 = scanner.nextInt();
System.out.println("请输入第三个数字");
int num3 = scanner.nextInt();
//求最大值
int max = num1 >= num2 ? num1 : num2;
int max2 = max >= num3 ? max : num3;
System.out.println("最大值是" + max2);
}
}
运行结果:
二:流程控制语句
2.1 流程控制语句
1.什么是流程控制语句:在一个程序执行的过程中,各条语句的执行顺序对程序的结果是由直接影响的,我们必须清楚每条语句的执行流程,并且要通过控制语句的执行顺序来实现我们要完成的功能。
2.分类:
- 顺序结构
- 选择结构(if语句、swith语句)
- 循环结构
2.2 顺序结构
1.定义:程序中最简单最基本的流程控制,没有特定的语法结构,按着代码的先后顺序,程序中的大多数代码都输这样运行的。
2.执行流程:从上往下,依次执行
2.3 选择结构之if语句
1.定义:选择结构也被称为分支结构,选择机构有特定的语法规则,代码要执行具体的逻辑运算进行判断,按逻辑晕眩的结构,选择执行不同的代码。
2.if语句的格式:
(1). if(比较表达式或者是boolean类型的值){
语法体
}
(2).if(比较表达式){
语句体1
}else{
语句体2
}
(3).if(比较表达式){
语句体1
}else if{
语句体2
}else if{
语句体3
}
、、、
else{
语句体n
}
3.if的三种格式的具体使用以及执行流程
public class if1 {
//选择结构语句if的格式1的使用及执行流程
public static void main(String[] args) {
//1.计算表示的布尔值
// 2.如果为ture则执行语句体
//3.如果是false就不执行语句体
if (5<10){
System.out.println("执行的结果时表达式为ture的情况");
}
}
}
运行结果:5<10,条件为ture,执行语句体
import java.util.Scanner;
public class if2 {
//选择结构语句if的格式2的使用及执行流程
public static void main(String[] args) {
//Scanner键盘录入数据
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要查询的数字");
int n = sc.nextInt();
//1.计算比较表达式的值
//2.运算结果为ture,进入if语句体
//3.运算结果为false,进入else语句体
if (n%2==0){
System.out.println("你要查询的数为偶数");
}else{
System.out.println("你要查询的数为奇数");
}
}
}
执行结果:
import java.util.Scanner;
public class if3 {
//选择结构语句if的格式3的使用及执行流程
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入你的成绩:");
int grade = sc.nextInt();
//1.计算比较表达式,判断其boolean值
//2.如果为ture,执行这里的表达式
//3.如果为false,继续计算下面的比较表达式,判断其boolean值
//4.ture,执行if语句,false执行else语句
//....
//如果表达式一直都是false,则执行最后一条语句
if (grade >= 0 && grade < 60) {
System.out.println(grade + "分为E等");
} else if (grade >= 60 && grade < 70) {
System.out.println(grade + "分为D等");
} else if (grade >= 70 && grade < 80) {
System.out.println(grade + "分为C等");
} else if (grade >= 80 && grade < 90) {
System.out.println(grade + "分为B等");
} else if (grade >= 90 && grade <= 100) {
System.out.println(grade + "分为A等");
} else {
System.out.println("成绩输入不正确");
}
}
}
2.4 选择结构之switch语句
1.switch语句的格式
swit语句的格式:
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
case 值3:
语句体3;
break;
....
default:
语句体n+1;
break;
}
2.switch的格式解析
- switch表示为switch语句,其中表达式的取值为:byte,short,int,char,枚举(JDK5之后),String(JDK7之后)。
- case之后的部分为与表达式进行比较的值。
- 语句体部分可以是一条或者多条语句。
- break表示中断,当语句执行到break是,就会结束switch语句。
- default表示case的所有选项都不匹配时,就执行default的内容。
3.switch的执行流程
- 先计算表达式的值
- 然后与case之后的进行匹配,如果匹配成功则执行对应的语句
- 遇到break就会结束语句,否则执行最后的default语句
4.switch语句的注意事项
- case后面只能是常量,不能为变量,多个case后面的值不能出现相同的值
- default可以省略,但是不建议,因为default是对所有不符合case条件的接收。
- break省略的情况下,会出现一种case穿透的现象,建议不要省略。
- default可以出现在switch语句的任意位置。
- switch遇到break或者执行到末位,代表着语句执行结束。
5.使用switch语句进行应用
import java.util.Scanner;
public class mouth {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要查询的月份:");
System.out.println("月份为1到12月!!!");
int mouth = sc.nextInt();
if (mouth==0&&mouth>12){
System.out.println("月份输入格式错误");
}
//获取用户输入的月份,与swit语句中的case进行匹配判断
switch (mouth){
case 4:
case 6:
case 9:
case 11:
System.out.println(mouth+"月为30天");
break;
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
System.out.println(mouth+"月为31天");
break;
default:
//所有case都无法匹配的情况下,执行这;里
System.out.println(mouth+"月为28天");
}
}
}
运行结果:
2.5 选择结构语句的选择
1.if选择结构语句的使用场景:
1.针对结果时boolean类型的判断
2.针对一个范围的判断
3.针对几个常量值得判断
2.switch选择结构语句的使用场景
针对几个常量值的判断