Java如何实现键盘输入?使用Scanner类使用方法解析。

迷南。 2023-06-18 13:55 86阅读 0赞

为什么需要键盘录入数据?
  我们书写程序时候,数据是固定不变的,但是在开发当中,数据肯定是动态的而不是固定的,所以我们需要把固定的数据更改为键盘录入。

如何使用Scanner键盘录入对象
   1、导包
   在class修饰的类名上面加入如下语句
   import java.util.Scanner;
   2、创建对象
  Scanner input = new Scanner(System.in);
   3、使用变量接收数据
   int num = input.nextInt();

注意:
1.常用方法
nextInt(); 获取用户输入的整数
nextDouble(); 获取用户输入的小数
nextBoolean(); 获取用户输入的boolean值 【不常用】
nextLine(); 获取用户输入的一行,结果是String类型,获取用户输入的字符串
next(); 结果是String类型,获取用户输入的字符串
这些方法都是阻塞方法

2.阻塞方法
什么是阻塞方法?===> 程序执行到这个方法的时候,会停止执行,并不会继续执行,直到用户输入结束,程序继续执行。

3.可能出现的异常
java.util.InputMismatchException
  异常名称: 输入的类型不匹配异常
   产生原因: 用户输入的类型和接收的类型不一致
  解决办法: 类型匹配即可

代码示例

  1. mport java.util.Scanner;
  2. public class ScannerDemo {
  3. public static void main(String[] args) {
  4. // 2.创建键盘输入对象 固定格式
  5. Scanner input = new Scanner(System.in);
  6. // 给出用户提示性语句
  7. System.out.print("请输入一行字符串: ");
  8. // 3.获取用户的输入
  9. String line = input.nextLine();
  10. System.out.println("您输入的数据是: " + line);
  11. System.out.print("请输入整数: ");
  12. int num = input.nextInt();
  13. System.out.println("您输入的整数是: " + num);
  14. System.out.print("请输入小数: ");
  15. double num2 = input.nextDouble();
  16. System.out.println("您输入的小数是: " + num);
  17. }
  18. }

键盘录入两个数,并将这两个数求和,求最大值,并输出

  1. // 1.导包
  2. import java.util.Scanner;
  3. public class ScannerDemo02 {
  4. public static void main(String[] args) {
  5. // 2.创建键盘输入对象
  6. Scanner input = new Scanner(System.in);
  7. System.out.print("请输入第一个数: ");
  8. // 3.定义变量num1 接受用户输入的整数
  9. int num1 = input.nextInt();
  10. System.out.print("请输入第二个数: ");
  11. // 4.定义变量num2 接受用户输入的整数
  12. int num2 = input.nextInt();
  13. // 5.定义变量sum 计算两个数的和
  14. int sum = num1 + num2;
  15. // 6.定义变量max 求两个数的最大值
  16. int max = (num1 > num2) ? num1: num2;
  17. // 7.输出和以及最大值
  18. System.out.println("两个数的和为: " + sum + ",两个数的最大值为: " + max);
  19. }
  20. }

键盘录入两个数,并判断两个数是否相等,如果两个数相等,输出两个数相等,不相等就输出两个数不相等,同时输出两个数中较大的值

  1. import java.util.Scanner;
  2. public class ScannerDemo03 {
  3. public static void main(String[] args) {
  4. Scanner input = new Scanner(System.in);
  5. System.out.print("请输入第一个数: ");
  6. int num1 = input.nextInt();
  7. System.out.print("请输入第二个数: ");
  8. int num2 = input.nextInt();
  9. // 三目运算符的值的类型?
  10. // int max = (num1 > num2) ? num1: num2;
  11. String result = (num1 == num2) ? "两个数相等": "两个数不相等,并且两个数中较大的值为: " + ((num1 > num2) ? num1: num2);
  12. System.out.println(result);
  13. }
  14. }

发表评论

表情:
评论列表 (有 0 条评论,86人围观)

还没有评论,来说两句吧...

相关阅读