【名师课堂】Java高级开发

【名师课堂】Java高级开发

Java核心第三部
156课时 |
31736人已学 |
(17 评论)

加入学习
加入学习

打印流解决的是OutputStream的缺陷,BufferedReader解决的是InputStream的缺陷,

Scanner在Java.util.包中,解决的是BufferedReader类

Scannner 主要解决扫描流的程序类,利用这个类可以方便的处理各种数据类型,也可以直接结合正则表达式来进行各项处理。主要关注:

1 判断是否有指定类型的数据hasNextLong

2 取得置顶类型的数据 public nextLong

3定义分隔符public Scanner useDelimiter(String pattern)【调用了正则】

构造方法 public Scanner(InputStream input)

Scanner scanner =new Scanner(System.in);

 

因为System.in 是InputStream 的 一个方法。比BUfferedReader 要简单一点。

hasNext() 不能判断为空。减少转型处理。

如果需要一个int 数据,则

if(scanner.hasNextInt()){

int age=scan.nextInt();} 表示,只有数据为Int的时候,才能给age进行赋值。极其便捷。可以用正则表达式进行判断。

Scanner 本身可以接收一个InputStreem类的对线,同样也可以接受文件输入流。

Scanner 完美替代BufferedReader,更好地实现了InputStream的操作

总结,除了二进制文件的拷贝操作,程序信息输出用打印流,输入则采用Scanner 流

 

 

[展开全文]
沸腾的硫酸 · 2019-01-12 · 【第12个代码模型】Scanner类 0

授课教师

阿里云开发者社区全面升级
一站式体验,助力云上开发!
进入新社区

相关课程

查看更多 >

本课程相关云产品