Scanner注意点:next和nextLine区别

用户交互Scanner

scanner.next() 和scanner.nextLine()区别:

next不输出带有空格的字符串,并且在输入过程中出现空格,next会判定为结束标志,从而输出字符串

//创建扫描器对象,接收键盘输入的数据
Scanner scanner = new Scanner(System.in);
System.out.println("请在底下输入内容:");
if(scanner.hasnext()){
    String str = scanner.next();
    System.out.println("输出的内容为:"+str);
}
scanner.close();

next输入和运行结果

nextLine是以回车键enter来判断结束,所以即使输入的字符串中出现空格,在输出之后也会出现在字符串中

//创建扫描器,接收键盘输入的数据
Scanner scanner = new Scanner(System.in);
System.out.println("请在底下输入内容:");
if(scanner.hasnextLine()){
    String str = scanner.nextLine();
    System.out.println("输出的内容为:"+str);
}
scanner.close();

nextLine输入和运行结果

//创建扫描器对象,接收键盘输入的数据
        Scanner scanner = new Scanner(System.in);
        System.out.println("请在底下输入内容:");
        int sum = 0;
        int m = 0;
        while (scanner.hasNextInt()){
            int  a = scanner.nextInt();
            m =m+1;
            sum = sum + a;
        }

        System.out.println(m+"输出总和为:" + sum);
        System.out.println(m+"平均数为:" + (sum/m));
        scanner.close();
posted @ 2021-07-27 17:35  Jidust  阅读(269)  评论(0)    收藏  举报