Scanner的小细节

Scanner对象是用来接收键盘输入的数据的,可以接收字符串,数字,浮点数,大数等多种数据。

     Scanner scanner = new Scanner(System.in);
        System.out.println("等待输入数据:");
        if(scanner.hasNext()){//hasNext是以空格为结束标志,所以只能打印一个单词
            String str = scanner.next();
            System.out.println("输入的字符串是:"+str);
        }
        scanner.close();//IO输入必须得关闭

细节:当你输入Hello world的时候,第一次打印str只有hello,但是还有字符在scanner内部。

我们可以通过这个一个个输出单词。

if(scanner1.hasNextLine()){//hasNext是以空格为结束标志,所以只能打印一个单词
            String str1 = scanner1.nextLine();
            System.out.println("输入的字符串是:"+str1);

这样一次性输出的是全部字符串

public class TestScanner01 {
    public static void main(String[] args) {
        double  sum = 0;
        int count = 0;//用来计数有多少个
        System.out.println("亲输入数据,非数字输入就会结束:");
        Scanner scanner = new Scanner(System.in);
        while(scanner.hasNextDouble()){
            sum= sum + scanner.nextDouble();
            count++;
        }
        System.out.println("平均值为:"+(sum/count));
        scanner.close();
    }
}

这个只是让你知道不只是有next(),nextLine(),nextDouble,nextInt(),hasNextInt(),等等

记住键盘输入肯定是能输入任何内容的,需要你自己去看看哪些可以用,你需要用到的时候去找找就行了。

原文地址:https://www.cnblogs.com/li33/p/12703980.html