BufferedReader vs Console vs Scanner

◇◆丶佛笑我妖孽 提交于 2019-11-27 17:17:54
tom

BufferedReader

  • Since Java 1.1
  • Throws checked exceptions
  • Can read chars, char arrays, and lines
  • Fast

Scanner

  • Since Java 1.5
  • Doesn't throw checked exceptions
  • Can read lines, whitespace-delimited tokens, regex-delimited tokens, and numbers
  • Difficult to read single characters

Console

  • Since Java 1.6
  • Doesn't throw checked exceptions
  • Can read lines
  • Underlying reader can read chars and char arrays (stops at line bounds)
  • Not always available (e.g. Eclipse)
  • Can read passwords (i.e. read without displaying the characters)

Recommendation: Scanner

The methods for reading numbers are very useful. The exceptions are unchecked, so you do not have to write boilerplate try/catch blocks.

beside these you can also use datainputstream etc.

Now BufferedReader Read text from a character-input stream, buffering characters so as to provide for the efficient reading of characters, arrays, and lines. The buffer size may be specified, or the default size may be used. The default is large enough for most purposes.

Where Scanner is a simple text scanner which can parse primitive types and strings using regular expressions. A Scanner breaks its input into tokens using a delimiter pattern, which by default matches whitespace. The resulting tokens may then be converted into values of different types using the various next methods. Scanner is used for parsing tokens from the contents of the stream while BufferedReader just reads the stream and does not do any special parsing.

also check the below link it will surely help you.......

http://www.javawebtips.com/50474/

Console class tries to implement a platform independent way to handle with console input. All OS has a console in any way, but they are quiet diferent in implementation. So Console class gives you a Java platfrom independent runtime class to access things like password input, etc.

Scanner is used for parsing tokens from the contents of the stream while BufferedReader just reads the stream and does not do any special parsing.

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!