• Scanner类


    Scanner类

     在java中,数据需要用户输入时,需要调用java提供的Scanner类

    基本语句:Scanner s = new Scanner(System.in);

    例如:键盘录入三个数据并获取最大值

    package demo01;
    
    import java.util.Scanner;
    
    public class Demo01Scanner {
        public static void main(String[] args) {
            // 创建对象备注:System.in 系统输入指的是通过键盘录入数据。
            Scanner sc = new Scanner(System.in);
            //接收数据
            System.out.println("请输入第一个数字");
            int a = sc.nextInt();
            System.out.println("请输入第二个数字");
            int b = sc.nextInt();
            System.out.println("请输入第三个数字");
            int c = sc.nextInt();
            //输出调用
            System.out.println("您输入最大值是" + max(a, b, c));
    
    
        }
    
        //// 定义获取三个数据的最大值的方法
        public static int max(int a, int b, int c) {
            // 三元运算符获取三个数据的最大值
            int temp = a > b ? a : b;
            int max = temp > c ? temp : c;
            return max;
        }
    }

    Scanner类的常用方法

    next():只读取输入直到空格。它不能读两个由空格或符号隔开的单词。此外,next()在读取输入后将光标放在同一行中。(next()只读空格之前的数据,并且光标指向本行)

    nextLine():读取输入,包括单词之间的空格和除回车以外的所有符号(即。它读到行尾)。读取输入后,nextLine()将光标定位在下一行。

    代码演示:

    public class Text { 
        public static void main(String []args) { 
            Scanner input = new Scanner(System.in); 
            System.out.println("请输入一个字符串(中间能加空格或符号)"); 
            String a = input.nextLine(); 
            System.out.println("请输入一个字符串(中间不能加空格或符号)"); 
            String b = input.next(); 
            System.out.println("请输入一个整数"); 
            int c; c = input.nextInt(); System.out.println("请输入一个double类型的小数"); 
            double d = input.nextDouble(); 
            System.out.println("请输入一个float类型的小数"); 
            float f = input.nextFloat(); 
            System.out.println("按顺序输出abcdf的值:"); 
            System.out.println(a); 
            System.out.println(b); 
            System.out.println(c); 
            System.out.println(d); 
            System.out.println(f); 
            } 
        }

    运行结果:

    请输入一个字符串(中间能加空格或符号) 
    我爱祖国! 
    请输入一个字符串(中间不能加空格或符号) 
    ILoveChina 
    请输入一个整数 
    520 
    请输入一个double类型的小数 
    12.26e3 
    请输入一个float类型的小数 
    3.1415926 
    按顺序输出abcdf的值: 
    我爱祖国! 
    ILoveChina 
    520 
    12260.0 
    3.1415926

     代码演示:

    public class inputInformation { 
        public static void main(String args[]) { 
        Scanner scan = new Scanner(System.in); //构造Scanner类的对象scan,接收从控制台输入的信息 
        System.out.println("请输入你的姓名"); 
        String name = scan.nextLine();//接收一个字符串,可以加除Enter以外的所有符号,包括空格和Tab 
        System.out.println("请输入你的ID"); 
        String ID ; 
        while(scan.hasNextLine()) {// hasNextLine()方法判断当前是否有输入,当键盘有输入后执行循环 
        if(scan.hasNextInt()) { // 判断输入的值是否为整数类型,当为整数类型时执行循环 
            ID = scan.nextLine(); 
            System.out.println("你输入的姓名为:"+name); 
            System.out.println("你输入的ID为:"+ID); 
            break; 
                }else { 
                    System.out.println("请输入数字哦!"); 
                    ID = scan.nextLine(); 
                    continue; 
                        } 
                    } 
                } 
            }

    运行结果:

    请输入你的姓名
    西地那非
    请输入你的ID
    q764323221
    请输入数字哦!
    764323221

     

  • 相关阅读:
    物理机与虚拟机互通
    error while loading shared libraries: libevent-2.2.so.1: cannot open shared object file: No such file or directory
    DateTime.Now.ToFileTime
    洛谷-P2249 【深基13.例1】查找
    洛谷-P3817 小A的糖果
    洛谷-P3612 [USACO17JAN]Secret Cow Code S
    洛谷-P5019 铺设道路
    洛谷-P2437 蜜蜂路线
    洛谷-P1044 栈
    洛谷-P1255 数楼梯
  • 原文地址:https://www.cnblogs.com/qq1312583369/p/10869712.html
Copyright © 2020-2023  润新知