• Java-Scanner


    Java Scanner类

    • 创建Scanner对象的基本语法

        Scanner s = new Scanner(System.in);
      
    • 通过Scanner类的next()nextLine()方法获取输入的字符串,在读取前一般需要使用hasNexthasNextLine判断是够还有输入的数据

        // 使用next方法
        import java.util.Scanner;
      
        public class ScannerDemo {
          public static void main(String[] args) {
          // 从键盘接收数据
            Scanner scan = new Scanner(System.in);
          // next 方式接收字符串
            System.out.println("next方式接收:");
            // 判断是否还有输入
            if(scan.hasNext()) {
              String str1 = scan.next();
              System.out.println("输入的数据为:" + str1);
            }
          }
        }
      
        // 使用`nextLine`方法
        import java.util.Scanner;
      
        public class ScannerDemo {
          public static void main(String[] args) {
          //从键盘接收数据
            Scanner scan = new Scanner(System.in);
           // nextline 方式接收字符串
             System.out.println("nextLine方式接收:");
             // 判断是否还有输入
             if(scan.hasNextLine()) {
               String str2 = scan.nextLine();
               System.out.println("输入的数据为:" + str2);
             }
          }
        }
      
    • next()nextLine()区别
      next():

    1. 一定要读取到有效字符后才可以结束输入
    2. 对输入有效之前遇到的空白,next()方法会自动将其去掉
    3. 只有输入有效字符后才将其后面的空白作为分隔符或者结束符
    4. next()不能得到带有空格的字符串
      nextLine():
    5. 以Enter为结束符,nextLine()返回的是输入回车之前的所有字符
    6. 可以获得空白
    • Scanner支持输入int或float类型的数据,输入前使用hasNextXxx()方法进行验证,再使用nextXxx()来读取

        import java.util.Scanner;
      
        public static ScannerDemo {
          public static void main(String[] args) {
          //从键盘接收数据
            scanner scan = new Scanner(System.in);
            int i = 0;
            float f = 0.0f;
            System.out.print("输入整数:");
            //判断输入的是否是整数
            if(scan.hasNextInt()) {
              //接收整数
              i = scan.nextInt();
              System.out.println("整数数据:" + i);
            } else {
            // 输入错误信息
              System.out.println("输入的不是整数!");
            }
            System.out.print("输入小数:");
            if(scan.hasNextFloat()) {
            // 判断输入的是否是小数
              f = scan.nextFloat();
             // 接收小数
              System.out.println("小数数据:" + f);
            }else{
            // 输入错误信息
              System.out.println("输入的不是小数!");
            }
          }
        }
      
    • 输入多个数字,并求其总和与平均数,每输入一个数字用回车确认,通过输入非数字来结束输入并输出执行结果

        import java.util.Scanner;
      
        class ScannerDemo
        {
        	public static void main(String[] args)
        	{
        	  Scanner scan = new Scanner(System.in);
        	  double sum = 0;
        	  int m = 0;
        	  while(scan.hasNextDouble())
        	  {
        	    double x = scan.nextDouble();
        	    m = m + 1;
        	    sum = sum + x;
        	  }
        	  System.out.println(m + "个数的和为" + sum);
        	  System.out.println(m + "个数的平均值为" + (sum/m));
        	}
        }
  • 相关阅读:
    leetcode-26-删除排序数组中的重复项
    用设计模式优化if else
    Builder设计模式
    退役划水(6)
    linux下安装nginx
    .NET 云原生架构师训练营(模块二 基础巩固 引入)--学习笔记
    SpringBoot项目的jar包瘦身计划
    如何解决高并发秒杀的超卖问题
    idea 最新jar包
    ArcGIS10.2企业数据库安装与配置
  • 原文地址:https://www.cnblogs.com/yfife/p/7398042.html
Copyright © 2020-2023  润新知