zoukankan      html  css  js  c++  java
  • Scanner概述

    * Scanner:用于接收键盘录入数据。

    * System类下有一个静态的字段:
    * public static final InputStream in; 标准的输入流,对应着键盘录入。
    *
    * InputStream is = System.in;
    *
    * class Demo {
    * public static final int x = 10;
    * public static final Student s = new Student();
    * }
    * int y = Demo.x;
    * Student s = Demo.s;
    *
    *
    * 构造方法:
    * Scanner(InputStream source)

     1 public class ScannerDemo {
     2     public static void main(String[] args) {
     3         // 创建对象
     4         Scanner sc = new Scanner(System.in);
     5 
     6         int x = sc.nextInt();
     7         
     8         System.out.println("x:" + x);
     9     }
    10 }

    * 基本格式:
    * public boolean hasNextXxx():判断是否是某种类型的元素
    * public Xxx nextXxx():获取该元素
    *
    * 举例:用int类型的方法举例
    * public boolean hasNextInt()
    * public int nextInt()
    *
    * 注意:
    * InputMismatchException:输入的和你想要的不匹配

     1 public class ScannerDemo {
     2     public static void main(String[] args) {
     3         // 创建对象
     4         Scanner sc = new Scanner(System.in);
     5 
     6         // 获取数据
     7         if (sc.hasNextInt()) {
     8             int x = sc.nextInt();
     9             System.out.println("x:" + x);
    10         } else {
    11             System.out.println("你输入的数据有误");
    12         }
    13     }
    14 }

    /*
    * 常用的两个方法:
    * public int nextInt():获取一个int类型的值
    * public String nextLine():获取一个String类型的值
    *
    * 出现问题了:
    * 先获取一个数值,在获取一个字符串,会出现问题。
    * 主要原因:就是那个换行符号的问题。
    * 如何解决呢?
    * A:先获取一个数值后,在创建一个新的键盘录入对象获取字符串。
    * B:把所有的数据都先按照字符串获取,然后要什么,你就对应的转换为什么。
    */

     1 public class ScannerDemo {
     2     public static void main(String[] args) {
     3         // 创建对象
     4         Scanner sc = new Scanner(System.in);
     5 
     6         // 获取两个int类型的值
     7         // int a = sc.nextInt();
     8         // int b = sc.nextInt();
     9         // System.out.println("a:" + a + ",b:" + b);
    10         // System.out.println("-------------------");
    11 
    12         // 获取两个String类型的值
    13         // String s1 = sc.nextLine();
    14         // String s2 = sc.nextLine();
    15         // System.out.println("s1:" + s1 + ",s2:" + s2);
    16         // System.out.println("-------------------");
    17 
    18         // 先获取一个字符串,在获取一个int值
    19         // String s1 = sc.nextLine();
    20         // int b = sc.nextInt();
    21         // System.out.println("s1:" + s1 + ",b:" + b);
    22         // System.out.println("-------------------");
    23 
    24         // 先获取一个int值,在获取一个字符串
    25         // int a = sc.nextInt();
    26         // String s2 = sc.nextLine();
    27         // System.out.println("a:" + a + ",s2:" + s2);
    28         // System.out.println("-------------------");
    29 
    30         int a = sc.nextInt();
    31         Scanner sc2 = new Scanner(System.in);
    32         String s = sc2.nextLine();
    33         System.out.println("a:" + a + ",s:" + s);
    34     }
    35 }
  • 相关阅读:
    字符串 CSV解析 表格 逗号分隔值 通讯录 电话簿 MD
    Context Application 使用总结 MD
    RxJava RxPermissions 动态权限 简介 原理 案例 MD
    Luban 鲁班 图片压缩 MD
    FileProvider N 7.0 升级 安装APK 选择文件 拍照 临时权限 MD
    组件化 得到 DDComponent JIMU 模块 插件 MD
    gradlew 命令行 build 调试 构建错误 Manifest merger failed MD
    protobuf Protocol Buffers 简介 案例 MD
    ORM数据库框架 SQLite 常用数据库框架比较 MD
    [工具配置]requirejs 多页面,多入口js文件打包总结
  • 原文地址:https://www.cnblogs.com/jiangjianzhu/p/5784479.html
Copyright © 2011-2022 走看看