欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > Scanner对象

Scanner对象

2025/5/18 23:44:29 来源:https://blog.csdn.net/m0_72541008/article/details/148032577  浏览:    关键词:Scanner对象

文章目录

    • Scanner对象
      • 基本语法
      • 使用next()接受
      • 使用nextLine()接受
      • 小案例
      • 总结

Scanner对象

java给我们提供了一个工具类,我们可以获取用户的输入

java.util.Scanner是java5的新特性,我们可以通过Scanner类来获取用户的输入

基本语法

Scanner s = new Scanner(System.in);

通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据

使用next()接受

package com.baoli.Scanner;
import java.util.Scanner;
public class Demo01 {public static void main(String[] args) {//  创建一个扫描器对象,用于接受键盘数据Scanner scanner = new Scanner(System.in);//  判断用户有没有输入字符串if(scanner.hasNext()) {//  使用next方式接受String str = scanner.next(); // 程序会等待用户输入完毕System.out.println("输出的内容为:"+str);}//  凡是属于IO流的类如果不关闭会一直占用资源,要养成好习惯用完就关掉scanner.close();}
}输入:hello word
输出的内容为:hello

使用nextLine()接受

package com.baoli.Scanner;
import java.util.Scanner;
public class Demo02 {public static void main(String[] args) {
//        从键盘接受数据Scanner scanner = new Scanner(System.in);System.out.println("使用nextLine方式接受");
//        判断是否还有输入if (scanner.hasNextLine()) {String str = scanner.nextLine();System.out.println("输出的内容为:"+str);}scanner.close();}
}使用nextLine方式接受
hello world
输出的内容为:hello world

小案例

package com.baoli.Scanner;
import java.util.Scanner;
public class Demo04 {public static void main(String[] args) {
//        案例:我们可以输入多个数字,并求其总和与平均数,每输入一个数字用回车确认,通过输入非数字来结束输入,并输入结果Scanner scanner = new Scanner(System.in);
//      定义变量double sum = 0;int count = 0;
//      通过循环判断是否还有输入,并在里面对每一次进行求和统计while (scanner.hasNextDouble()) {sum += scanner.nextDouble();count++;}System.out.println(count + "个数的总和为:" + sum);System.out.println(count + "个数的平均值为:"+ (sum/count));}
}

总结

next():

  1. 一定要读取到有效字符后才可以结束输入
  2. 对输入有效字符之间遇到的空白,next()方法会自动将其去掉
  3. 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符
  4. next()不能得到带有空格的字符串

nextLine()

  1. 以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符
    分隔符或者结束符
  2. next()不能得到带有空格的字符串

nextLine()

  1. 以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符
  2. 可以获得空白

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词