day04大数据学习JAVA篇
> Scanner键盘录入
1.导包 import java.util.Scanner;
这行代码必须出现在类定义之外,并且之上
2.创建对象 调用底层系统输入的功能
Scanner sc=new Scanner(System.in);
只有sc是变量名称可以发生改变,别的不允许改变
3.接收数据 区分接收什么样的数据,回车表示输入数据结束
int a =sc.nextInt();
只有变量名a可以发生改变,sc是第二步中的变量名,别的不允许
注意:
键盘能打出来的所有内容,默认都是String
sc.nextInt();表示程序接收键盘输入的数据(通过底层有隐藏的类型转换)
接收String类型的数据用sc.next();
例子:
1.需求:现在需要一个获得两人年龄并比较的程序
代码如下:
import java.util.Scanner;
public class Demo1 {
public static void main(String[] args) {
Scanner i = new Scanner(System.in);
System.out.println("请输入第一个人的年龄");
int age=i.nextInt();
System.out.println("请输入第二个人的名字");
int age2=i.nextInt();
int max=(age>age2)?age:age2;
System.out.println("他们中年龄最大的年龄是:"+max);
}
}
运行结果如下:

语句(程序流程控制)
Ⅰ顺序:java默认程序从上向下执行
Ⅱ选择(分支):if switch
Ⅲ循环:(详情见下一章节)
if语句:
格式1:
if(比较表达式){
语句体;
}
执行流程:
1.先计算关系表达式的值
2.如果关系表达式的值是true,执行语句体。
3.如果关系表达式的值是false,不执行语句体。
4.继续执行后面的内容
格式2:
if(比较表达式){
语句体1;
}else{
语句体2;
}
执行流程
1.先计算关系表达式的值
2.如果关系表达式的值是true,执行语句体1。
3. 如果关系表达式的值是false,执行语句体2,
4.继续执行后面的内容
格式3:
if(条件表达式1){
语句体1;
}else if(条件表达式2){
语句体2;
}
……
else{
语句体n;
}
执行流程
1.先计算关系表达式1的值
2.如果关系表达式1的值是true,执行语句体1,如果为false计算关系表达式2的值。
3. 如果关系表达式2的值是true,执行语句体2,如果为false计算关系表达式3的值
4.。。。。。
5.如果没有任何关系表达式的值为true,执行语句体n
注意:如果判断是连续的范围,判断条件从大到下或从下到大依次去写 最简单
switch
专门用于做等值判断,并且只能有一个等于成立
格式:
switch(表达式){
case 值1:
执行语句1;
break;
case 值2:
执行语句2;
break;
...
default:
执行语句n;
break;
}
表达式: 取值范围在jdk1.6只支持四种: byte,short,int , char。jdk1.7 以后支持String类型的。
①case: 后面的值和表达式进行比较是否相等
②break: 结束的意思,用来结束switch语句
③default: 如果case后面的值和表达式都不匹配,执行default中的语句,和if语句中的else类似
注意: ①case后面的值不能相同
②break 可加可不加,如果不加会向下继续执行,直到遇到break ③default可加可不加,加载什么地方都行,并且最后去执行(前提条件case判断不成立)
循环语句预热:
import java.util.Scanner;
public class SYsystemIn {
public static void main(String[] args) {
Scanner sb=new Scanner(System.in);
for(int i=1;i<3;i++){
int zs=0,ls=0;
System.out.println("请输入张三的年龄:");
zs=sb.nextInt();
System.out.println("请输入李四的年龄:");
ls=sb.nextInt();
int a=(zs>ls)?zs:ls;
System.out.println("他们两个最大的年龄是多大:"+a);
}}
}
上一章day03-java的简单运算符
下一章day05-循环语句
天天更新不容易,随手点个小赞👍,你说是吧,吴彦祖!O(∩_∩)O