• 蓝桥杯备考随手记: Scanner 类中常用方法


    Scanner类是Java中用于从标准输入、文件或其他输入流中读取数据的类。它提供了一系列方法来读取不同类型的数据,例如整数、浮点数、字符串等。

    在Java中,Scanner类位于java.util包中,使用时需要先导入该包。

    使用Scanner类需要先创建一个Scanner对象,并将要读取的输入流传递给它的构造函数。

    常见的用法有:

    1. 从标准输入读取数据:
      1. Scanner scanner = new Scanner(System.in);
      2. int num = scanner.nextInt(); // 读取一个整数
      3. double d = scanner.nextDouble(); // 读取一个浮点数
      4. String str = scanner.next(); // 读取一个字符串
    2. 从文件中读取数据:
      1. Scanner scanner = new Scanner(new File("data.txt"));
      2. int num = scanner.nextInt(); // 读取一个整数
      3. double d = scanner.nextDouble(); // 读取一个浮点数
      4. String str = scanner.next(); // 读取一个字符串

    下面介绍一些常用的方法:

    1. next() 用于读取并返回输入流中的下一个字符串。该方法会自动忽略输入中的空白字符,并返回以空白字符分隔的字符串。

      1. Scanner scanner = new Scanner(System.in);
      2. String str = scanner.next();
    2. nextLine() 用于读取并返回输入流中的下一行字符串。该方法会读取直到遇到换行符为止,并返回包括换行符在内的整行字符串。

      1. Scanner scanner = new Scanner(System.in);
      2. String line = scanner.nextLine();
    3. nextInt() 用于读取并返回输入流中的下一个整数。该方法会自动跳过输入中的空白字符,并返回一个整数。

      1. Scanner scanner = new Scanner(System.in);
      2. int num = scanner.nextInt();
    4. nextDouble() 用于读取并返回输入流中的下一个浮点数。该方法会自动跳过输入中的空白字符,并返回一个浮点数。

      1. Scanner scanner = new Scanner(System.in);
      2. double d = scanner.nextDouble();
    5. hasNext() 用于判断输入流中是否还有下一个元素,如果有则返回true,否则返回false。

      1. Scanner scanner = new Scanner(System.in);
      2. if (scanner.hasNext()) {
      3. String str = scanner.next();
      4. }
    6. hasNextInt() 用于判断输入流中下一个元素是否为整数,如果是则返回true,否则返回false。

      1. Scanner scanner = new Scanner(System.in);
      2. if (scanner.hasNextInt()) {
      3. int num = scanner.nextInt();
      4. }
    7. hasNextDouble() 用于判断输入流中下一个元素是否为浮点数,如果是则返回true,否则返回false。

      1. Scanner scanner = new Scanner(System.in);
      2. if (scanner.hasNextDouble()) {
      3. double d = scanner.nextDouble();
      4. }
    8. useDelimiter():设置分隔符。默认情况下,Scanner使用空白字符(包括空格、Tab键、换行符等)作为分隔符。可以使用useDelimiter()方法将其修改为其他分隔符。
      1. Scanner scanner = new Scanner(System.in);
      2. scanner.useDelimiter(",");
      3. String str = scanner.next(); // 以逗号作为分隔符读取下一个字符串

    在使用Java中的Scanner类时,需要注意以下几点:

    1. Scanner类会自动跳过输入中的空白字符(如空格、Tab键、换行符等),直到读取到有效的数据为止。

    2. 换行符被视为输入结束的标志,因此在使用next()方法读取完一个输入后,需要使用nextLine()方法来读取下一行输入。

    3. 使用完Scanner类后,应调用其close()方法来释放资源,特别是在读取文件时,要及时关闭文件流。

    4. 在使用Scanner类读取输入时,应确保输入格式正确,以避免出现异常。可以使用hasNextXxx()方法进行判断,以确保输入流中的下一个元素是期望的类型。

    总之,在使用Scanner类时,要注意处理空白字符、换行符,及时关闭Scanner对象,确保输入格式正确,以提高程序的健壮性和可靠性。

  • 相关阅读:
    Python实现邮件发送时如何设置服务器参数?
    Redis中间件21,神仙打架,事务 vs 管道,何时使用何种?
    114页5万字字智能交通大数据综合服务平台建设方案
    在Java中操作Redis_Spring Data Redis使用方式——环境搭建
    【推荐系统】ESMM:一种有效估算后点击转换率的方法
    ThinkPHP框架使用工厂模式对接多个物流公司下单接口架构示例(php7.0及以上)
    (四) Docker镜像
    企业化运维(5)_mysql数据库
    延时任务-基于netty时间轮算法实现
    40个高质量计算机毕设项目分享【源码+论文】(五)
  • 原文地址:https://blog.csdn.net/DaPiCaoMin/article/details/137406803