zoukankan      html  css  js  c++  java
  • 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));
        	}
        }
  • 相关阅读:
    17. 文件查找
    18. 后台进程
    16. Linux 文件目录权限
    15. SSH 远程
    14. 用户管理
    Emacs Python 自动补全--Elpy
    C++ 程序在运行时不显示dos界面
    OpenCV设置摄像头分辨率及全屏显示
    #error : Xiron Platform Abstraction Layer
    Win10 下Cmake编译配置 Opencv3.1 + Cuda7.5 + VS2013
  • 原文地址:https://www.cnblogs.com/yfife/p/7398042.html
Copyright © 2011-2022 走看看