黑马程序员技术交流社区

标题: Scanner 类 如何接收一个包含空格的字符串 [打印本页]

作者: 任奇    时间: 2012-3-10 21:09
标题: Scanner 类 如何接收一个包含空格的字符串
Scanner cin = new Scanner(new BufferedInputStream(System.in));
                String str = cin.next();
                System.out.println(str);
输入:abc def会被认为是输入了两个字符串、求解。
作者: 房宝彬    时间: 2012-3-10 21:29
查找并返回来自此扫描器的下一个完整标记。完整标记的前后是与分隔模式匹配的输入信息。即使以前调用 hasNext() 返回了 true,在等待要扫描的输入时此方法也可能阻塞。


注意:完整标记的前后是与分隔模式匹配的输入信息   

因为abc def中间有一个空格,空格被视为分隔符,



作者: 蒙武辉    时间: 2012-3-10 21:43
空格是它默认的分隔符.
作者: 任奇    时间: 2012-3-10 22:09
房宝彬 发表于 2012-3-10 21:29
查找并返回来自此扫描器的下一个完整标记。完整标记的前后是与分隔模式匹配的输入信息。即使以前调用 hasNe ...

该怎么解决?即想获得一行数据,又能接受下一个nextLine()
作者: 房宝彬    时间: 2012-3-10 22:11
任奇 发表于 2012-3-10 22:09
该怎么解决?即想获得一行数据,又能接受下一个nextLine()

你是说在加空格的情况下,还要获取一行?
作者: 房宝彬    时间: 2012-3-10 22:11
房宝彬 发表于 2012-3-10 22:11
你是说在加空格的情况下,还要获取一行?

用转译试试,我没有这么弄过
作者: 任奇    时间: 2012-3-10 22:35
房宝彬 发表于 2012-3-10 22:11
用转译试试,我没有这么弄过

可以的话 给段代码 看看?
作者: 马胜平    时间: 2012-3-10 22:40
可以Scanner类中的useDelimiter方法设置分隔符
如useDelimiter("\n")就设置了回车为分隔符。




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