码迷,mamicode.com
首页 > 其他好文 > 详细

Scanner类

时间:2019-05-15 16:01:03      阅读:102      评论:0      收藏:0      [点我收藏+]

标签:并且   []   int   mic   nbsp   常用   获取   接收   调用   

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

 

 

 

 

 

Scanner类

标签:并且   []   int   mic   nbsp   常用   获取   接收   调用   

原文地址:https://www.cnblogs.com/qq1312583369/p/10869712.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!