黑马程序员技术交流社区

标题: 关于Scanner [打印本页]

作者: 0825梁磊    时间: 2015-9-10 13:04
标题: 关于Scanner
Scanner
       (1)JDK5以后出现的用于键盘录入数据的类。
       (2)基本格式:
导包
imort java.util.Scanner;
创建一个键盘输入的数据对象
Scanner sc = new scanner(System.in);
定义一个变量x来获取输入的数据
int x = sc.nextInt();
(3)关于System.in这个东西
首先判断出System是一个类,in这是一个static修饰的变量
通过查看System这个类发现in这个变量publicstatic final InputStream in
其次判断出in的类型是InputStream,System直接调用变量in可以用如下方式接收
InputStream is = System.in;
              最后得出使用的Scanner的构造方式如下:
Scanner(InputStream source)
       (4)基本方法格式:
              hasNextXxx() 判断是否是某种类型的元素
              nextXxx()       获取该元素
用int类型举例
public boolean hasNextInt()
public int nextInt()
★Xxx处可以是Byte Boolean Double Long Short Float Line
       (5)要掌握的两个方法
              public int nextInt()
例如int a = sc.nextInt();
              public String nextLine()
例如String s = sc.nextLine();
       (6)需要注意的小问题
              A:同一个Scanner对象,先获取数值,再获取字符串会出现一个小问题
              B:解决方案:
                     a:重新定义一个Scanner对象
                     b:把所有的数据都用字符串获取,然后再进行相应的转换


作者: 大木木    时间: 2015-9-10 15:42
第六点小问题曾经让我吃瘪了。。。
作者: 641113495    时间: 2015-9-10 19:51
写的太及时了,顶一个
作者: xbdlgy    时间: 2015-9-10 20:05
很好的习惯哇  可以留着以后看
作者: 阮文江    时间: 2015-9-10 21:15
我晕,到现在我都还在用bufferedReader buf = new BufferedReader(new InputStreamReader(System.in));这样的方法获取数据!!!!我看得资料到底是啥年代的啊!!!
作者: 史世锋    时间: 2015-9-10 21:31
哈哈 楼上
作者: 0825梁磊    时间: 2015-9-10 21:34
阮文江 发表于 2015-9-10 21:15
我晕,到现在我都还在用bufferedReader buf = new BufferedReader(new InputStreamReader(System.in));这样 ...

哈哈,都差不多




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2