• Scanner类详解


    默认情况下,Scanner以空格和换行(空格键、Tab键、Enter键)作为分隔符。

    1. next()方法k可以获取任意有效字符。next()方法以及形如nextXxx()的方法会忽略有效字符前的空格和回车,以空格和换行作为结束符,读取到有效字符后的空格和换行前结束,这就决定了它们不能得到带有空格的字符串。next()的返回值类型是String,nextXxx()的返回值是相应的基本数据类型。

    2. nextXxx()方法的功能就是将输入的字符串转化为相应的基本数据类型,如果不能转换就抛出java.util.InputMismatchException异常.

    System.out.println(scanner.nextDouble());
    System.out.println(scanner.nextBoolean());
    System.out.println(scanner.nextInt());
    System.out.println(scanner.nextInt());

    3.  nextLine()方法只识别Enter键作为结束,也就是说它获取回车键前的所有字符,包括空格。nextLine()方法的返回值类型是String,可以得到带空格的字符串。

    int i = 0;
    String temp;
    while(scanner.hasNext()){
    temp = scanner.nextLine();
    i++;
    System.out.println("获取的第"+i+"个值是:"+temp);
    }

    4. 由于next(),nextXxx() 和 nextLine() 的结束符不同,所以在混合使用时,要注意处理,防止出错。

    注意:nextXxx()过滤掉了前面的空格;nextLine()读取到了前面遗留下来的空格。

    5、

     

     ############################################################################################

    1、next方法。获取一个字符串。获取单词。一般与hasNext联合使用。需要添加退出条件,字符串比较退出

    (1)如果最开始的输入是空格或回车,那么将会被过滤掉。

    (2)从第一个有效字符(就是非空格和回车的任何字符)开始,直到遇到第一个空格或回车,这区间内的字符串就是nex方法返回的值。

    (3)next方法的结束符是回车,也就是说直到遇到回车键时才结束掉输入阻塞。

     

    2、nextBye,nextShort,nextInt,nextLong,nextFloat,nextDouble,nextBoolean,nextBigInteger,nextBigDecimal。与对应hasNextXxx方法对应。

     

    (1)如果最开始的输入是空格或回车,那么将会被过滤掉。

     

    (2)从第一个有效字符(就是非空格和回车的任何字符,而且还必须是对应的数据类型)开始,直到遇到第一个空格或回车,这区间内的数据就是对应的nexXxx方法返回的值。

     

    (3)next方法的结束符是其他类型的数据才结束掉输入阻塞。回车停止不了的。回车前必须有其他数据类型的字符。

    退出条件需要添加,或者输入不合法数据。

     

    3、nextLine方法与hasNextLine方法。需要添加退出条件,字符串比较的退出条件。这两个方法作用是可以按行获取数据,即以行为单位,那么最好用字符串变量来接受一行的输入。

    #####################################

    Scanner into = new Scanner(System.in);

    while(into.hasNextLine()){

    String str = into.nextLine();

    if(str.equals("#end#"))

    break;

    ............

    ...........

    }

    ##################################

    4、

    5、

  • 相关阅读:
    mysql group_concat函数
    easyui textbox获取焦点事件
    jquery获取select下拉框的前一个,后一个,第一个,最后一个option对象
    easyui 只刷新当前页面的数据 datagrid reload 方法
    spring-data-jpa查询语句的书写实例小计
    jquery给input标签添加data-options属性
    正则表达式的常用方法
    正则表达式之 /^(d)$/
    jquery获取下拉列表的值和显示内容的方法
    一个 关于 case when的SQL
  • 原文地址:https://www.cnblogs.com/igoodful/p/9619302.html
Copyright © 2020-2023  润新知