zoukankan      html  css  js  c++  java
  • java 10-4 Scanner方法

      Scanner:用于接收键盘录入数据
         常用的两个方法(int举例):
          public int nextInt():获取一个int类型的值
          public String nextLine():获取一个String类型的值

         有时候会出现问题:
           先获取一个数值,在获取一个字符串,会出现问题。(你只能输入数值,系统直接跳出结果,无法输入字符串)
        主要原因:就是那个换行符号的问题。(回车键)
          如何解决呢?
            A:先获取一个数值,再创建一个新的键盘录入对象获取字符串。
            B:先把所有的数据都按照字符串获取,然后要什么,你就对应的转换为什么。
        基本格式:
          public boolean hasNextXxx():判断是否是某种类型的元素
            public Xxx nextXxx():获取该元素

        举例:用int类型的方法举例
          public boolean hasNextInt()
          public int nextInt()
        错误注意:
           InputMismatchException:输入的和你想要的不匹配

     1

      package cn_scanner;

      import java.util.Scanner;

      public class Scanner_1 {
     2 public static void main(String[] args) {
     3 Scanner sc = new Scanner(System.in);
     4 if(sc.hasNextInt()){//判断输入的数据是否是int类型的
     5 int x = sc.nextInt();
     6 System.out.println("x:"+x);
     7 }
     8 else{
     9 System.out.println("您输入的数据类型不匹配");
    10 }
    11 //这个格式是最为严谨的Scanner格式
    12 
    13 //下面为解决 先获取一个数值,在获取一个字符串,会出现问题 的两个解决方案:
    14 //第一个方法:先获取一个数值,再创建一个新的键盘录入对象获取字符串。
    15 int a = sc.nextInt();
    16 Scanner sc2 = new Scanner(System.in);
    17 String s = sc2.nextLine();
    18 System.out.println("a:"+a+"	"+"s"+s);
    19 //这个方法较为麻烦,若是需要很多次的输入扫描,则要创建很多个Scanner。
    20 
    21 //第二个方法:先把所有的数据都按照字符串获取,然后要什么,你就对应的转换为什么。
    22 //这个在之前的学习中有,记载在安卓巴士的文章中
    23 }
    24 
    25 }
    何事都只需坚持.. 难? 维熟尔。 LZL的自学历程...只需坚持
  • 相关阅读:
    并发容器和框架之ConcurrentHashMap
    Java的LockSupport工具,Condition接口和ConditionObject
    从源码来看ReentrantLock和ReentrantReadWriteLock
    VMWARE虚拟机上Terminal中使用sudo出现”** 不在sudoers文件中,此事将被警告 “错误
    mac下idea运行项目慢问题解决
    Idea 只修改编辑区主题
    redis内部数据结构的数据结构
    mysql存储过程详解
    HashMap中resize()剖析
    谈Redis的refash的增量式扩容
  • 原文地址:https://www.cnblogs.com/LZL-student/p/5870869.html
Copyright © 2011-2022 走看看