一、获取用户键盘输入的数据
Scanner就是Java提供给我们用于键盘录入数据的类,为了录入不同类型的数据,还提供了不同的功能,每一个功能会有不同的名称,我们只需要调用Scanner提供的功能就可以完成键盘录入数据。
代码案例:
【第1步】:在class类上导包:一般不需要我们自己做,idea工具会自动帮助我们 导包的。
import java.util.Scanner;
【第2步】:得到一个用于键盘扫描器对象(照抄代码就行,固定格式)
//Scanner是键盘扫描器对象(你就把它理解成一个东西),这个东西有录入的功能
//sc是给这个东西取的名字
Scanner sc = new Scanner(System.in);
【第3步】:开始调用sc的功能,来接收用户键盘输入的数据。
//sc这个东西有键盘录入整数的功能,这个功能的名字叫nextInt()
//.表示表示调用的意思
int age = sc.nextInt();
System.out.println("我的年龄是:"+age);
//sc这个东西还有键盘录入字符串的功能,这个功能的名字叫next
String name = sc.next();
System.out.println("我的姓名是:"+name);
public class ScannerDemo1 {
public static void main(String[] args) {
// 1、导包:一般不需要我们自己做,idea工具会自动帮助我们 导包的。
// 2、抄写代码:得到一个键盘扫描器对象(东西)
Scanner sc = new Scanner(System.in);
// 3、开始 调用sc的功能,来接收用户键盘输入的数据。
System.out.println("请您输入您的年龄:");
int age = sc.nextInt(); // 执行到这儿,会开始等待用户输入一个整数,直到用户按了回车键,才会拿到数据。
System.out.println("您的年龄是:" + age);
System.out.println("请您输入您的名字:");
String name = sc.next(); // 执行到这儿,会开始等待用户输入一个字符串,直到用户按了回车键,才会拿到数据。
System.out.println(name + "欢迎您进入系统~~");
}
}
二、程序流程控制
程序的流程控制一般分为3种:顺序结构、分支结构、循环结构
顺序结构:就是不加任何控制,代码从main方法开始自上而下执行
分支结构:就是根据条件判断是true还是false,有选择性的执行哪些代码。在Java语言中提供了两个格式if 、 switch
循环结构:就是控制某一段代码重复执行。在Java语言中提供了三种格式,for、while、do-while
1、循序结构
循序结构就是按照从上往下的循序进行运行的代码。
2、分支节后
1.)if分支
分支格式:
if(条件表达式){ if(条件表达式){ if(条件表达式1){
代码; 代码1; 代码1;
} }else { }else if(条件表达式2){
代码2; 代码2;
} } else{
代码3;
}
if 第一种形式
// 需求:测量用户体温,发现体温高于37度就报警。
double t = 36.9;
if(t > 37){
System.out.println("这个人的温度异常,把他赶紧带走~~");
}
if 第二种形式
// 需求2:发红包,你的钱包余额是99元,现在要发出90元
// 如果钱够触发发红包的动作,如果钱不够,则提示:余额不足。
double money = 19;
if(money >= 90){
System.out.println("发红包成功了~");
}else {
System.out.println("余额不足~~");
}
if 第三种形式
// 需求3:某个公司有一个绩效系统,根据员工的打分输出对应的绩效级别。[0,60) D [60,80) C [80,90) B [90,100] A
int score = 298;
if(score >= 0 && score < 60) {
System.out.println("您的绩效级别是: D");
}else if(score >= 60 && score < 80){
System.out.println("您的绩效级别是: C");
}else if(score >= 80 && score < 90){
System.out.println("您的绩效级别是: B");
}else if(score >= 90 && score <= 100){
System.out.println("您的绩效级别是: A");
}else {
System.out.println("您录入的分数有毛病~~");
}
2.) switch分支
流程:switch 分支的作用,是通过比较值来决定执行哪条分支代码。先看一下switch分支的格式和执行流程
案例:
/*
需求:做个电子备忘录,在控制台分别输出周一到周五的工作安排
周一:埋头苦干,解决bug
周二: 请求大牛程序员帮忙
周三:今晚啤酒、龙虾、小烧烤
周四:主动帮助新来的女程序解决bug
周五:今晚吃鸡
周六:与王婆介绍的小芳相亲
周日:郁郁寡欢、准备上班。
*/
String week = "周三";
switch (week){
case "周一":
System.out.println("埋头苦干,解决bug");
break;
case "周二":
System.out.println("请求大牛程序员帮忙");
break;
case "周三":
System.out.println("今晚啤酒、龙虾、小烧烤");
break;
case "周四":
System.out.println("主动帮助新来的女程序解决bug");
break;
case "周五":
System.out.println("今晚吃鸡");
break;
case "周六":
System.out.println("与王婆介绍的小芳相亲");
break;
case "周日":
System.out.println("郁郁寡欢、准备上班");
break;
default:
System.out.println("您输入的星期信息不存在~~~");
}
三、循环结构
1、for循环的格式和流程
格式:
for (初始化语句; 循环条件; 迭代语句) {
循环体语句(重复执行的代码);
}
//需求:打印3行Hello World
for(int i = 0; i < 3; i++) {
System.out.println("Hello World");
}
顺序:
for循环求和案例
//需求:求1~100中所有整数的和
int sum = 0;
//定义一个循环,先产生1-100,这100个数
for (int i = 1; i <= 100; i++) {
//每产生一个数据,就把这个数和sum累加
sum += i; //sum = sum + i;
}
System.out.println("1-100的数据和:" + sum);