键盘录入概述:

之前我们涉及到的数据都是写死的, 固定的数据, 这样做用户体验并不好, 我们就想着, 能不能让用户录入数据, 我们通过特定的代码来接收, 这样做就非常好玩儿了, 针对于这种情况, 我们可以通过键盘录入来实现.

即: Java中键盘录入功能指的就是Scanner类, 我们可以通过它的一些方法, 来获取用户录入的数据.

使用步骤

导包. 包就是文件夹.

  • :
  • Scanner类是java.util包下的类, 使用之前必须要先导包.
  • 导包的语句是定义在类的上面的, 格式如下:
  1.  java.util.Scanner;

创建Scanner类的对象, 格式为:

  • 也就是必须这么写.
    Scanner sc = new Scanner(System.in);

通过Scanner类的nextInt()方法接收用户录入的数据.

  1. nextInt();

案例一: Scanner入门

需求

提示用户录入他/她的年龄.

通过键盘录入功能, 接收用户录入的年龄.

将用户录入的数据(年龄)打印到控制台上.

参考代码

//导包
import java.util.Scanner;

public class ScannerDemo01 {
public static void main(String[] args) {
//1. 提示用户录入他/她的年龄.
System.out.println("请录入您的年龄: ");
//2. 通过键盘录入功能, 接收用户录入的年龄.
Scanner sc = new Scanner(System.in);
int age = sc.nextInt();
//3. 将用户录入的数据(年龄)打印到控制台上.
System.out.println("age: " + age);
}
}

案例二: 键盘录入版和尚身高

需求

提示用户录入第一个和尚的身高, 并接收

提示用户录入第二个和尚的身高, 并接收

提示用户录入第三个和尚的身高, 并接收.

通过三元运算符, 获取三个和尚中身高最矮的那个和尚的身高.

将结果(最低身高)打印到控制台上.

参考代码

import java.util.Scanner;

public class ScannerDemo02 {
public static void main(String[] args) {
//身高未知,采用键盘录入实现。首先导包,然后创建对象。
Scanner sc = new Scanner(System.in);
//键盘录入三个身高分别赋值给三个变量。
System.out.println("请输入第一个和尚的身高:");
int h1 = sc.nextInt();
System.out.println("请输入第二个和尚的身高:");
int h2 = sc.nextInt();
System.out.println("请输入第三个和尚的身高:");
int h3 = sc.nextInt();
//用三元运算符获取前两个和尚的较低身高值,并用临时身高变量保存起来。
int temp = h1 < h2 ? h1 : h2;
//用三元运算符获取临时身高值和第三个和尚身高较低值,并用最低身高变量保存。
int min = temp < h3 ? temp : h3;
//输出结果。
System.out.println("这三个和尚中身高最低的是:" + min +"cm");
}
}

 练习

需求

  • 提示用户键盘录入一个三位数, 并接收.
  • 求这个数的个位,十位,百位分别是多少.
  • 并将结果打印到控制台上.

参考代码

import java.util.Scanner;

//定义一个类, 类名叫: ExerciseDemo01
public class ExerciseDemo01 {
//定义main方法, 作为程序的主入口.
public static void main(String[] args) {
//1. 创建Scanner对象, 用户接受用户录入的数据.
Scanner sc = new Scanner(System.in);
//2. 提示用户录入一个三位数, 并接收.
System.out.println("请录入一个100 - 999 之间的整数: ");
int num = sc.nextInt();
//3. 获取该三位数的各个位数上的数字.
int ge = num % 10;
int shi = num / 10 % 10;
int bai = num / 100 % 10;
//4. 打印结果.
System.out.println(num + "的百位数字是: " + bai + ", 十位数字是: " + shi + ", 个位数字是: " + ge);
}
}