码迷,mamicode.com
首页 > 编程语言 > 详细

java令牌读取方法和Scanner的工作方式

时间:2014-09-27 16:51:00      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:java   scanner   

Scanner的工作方式

nextInt,nextDouble,next等都是令牌读取方法。nextLine不是令牌读取方法。

令牌读取方法的工作方式:

首先跳过任意分隔符,然后读取一个以分隔符结束的令牌。然后对应于nextByte,nextInt,nextLong方法,这个令牌会分别自动转换为一个byte,int,long。

Next,nextLine都读取一个字符串

Next是读取分隔符分割的字符串  nextline读取的是以行分隔符分割的行。

行分割符是系统定义的。在windos平台是\r\n,在unix是\n,为了得到特定平台下的行分割符

使用:String lineSeparator = System.getProperty(“line.separator”);

 

令牌读取方式不能读取令牌后面的分隔符。如果在令牌读取方法后面调用nextline那么,从分隔符开始,到行分隔符进行读取。行分隔符也会读取但是不作为字符串的部分。

 

注意在next后面跟随nextline 会出现一些情况

例如

Scanner input = new Scanner(system.in);

Int intvalue= input.nextInt()

String line = input.nextLine();


输入  34 123 回车

Intvalue是34    line是空格加123;

如果输入时 34   回车  123 回车(其实输入34后按回车程序就已经结束了)

Intvalue还是34,line是空字符串。


java令牌读取方法和Scanner的工作方式

标签:java   scanner   

原文地址:http://blog.csdn.net/crazyzhb2012/article/details/39612251

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!