黑马程序员技术交流社区

标题: 键盘录入小问题答疑 [打印本页]

作者: 龙腾虎跃    时间: 2018-3-11 20:52
标题: 键盘录入小问题答疑
键盘录入的时候经常有同学遇见下面这样的问题public static void main(String[] args) {
                Scanner sc=new Scanner(System.in);
                System.out.println("请输入一个整数:");
                int a=sc.nextInt();
                System.out.println("请输入一个字符串:");
                String s=sc.nextLine();
               
                System.out.println(a);
                System.out.println(s);
        }

打出来的结果就是
请输入一个整数:
10
请输入一个字符串:
10

这里字符串下面的10是输出结果.
结果我们还没有输入字符串呢?就结束程序了什么鬼......................
这里呢,我来说明说明:  首先我们获取一个整数的时候,键盘录入了一个数据给程序了,
然后我们却忽略了我们按下回车键 会有一个  \r\n   的换行字符串,
这时候我们又获取了键盘录入一个字符串,程序就把\r\n给了 接下来键盘录入的s,
所以呢我们要录入的字符串就被\r\n赋予了;
要如何解决这个问题呢?请听下回分解


作者: gzgd    时间: 2018-3-27 14:52
哈哈,有趣
作者: gzgd    时间: 2018-3-27 14:52

作者: gzgd    时间: 2018-3-27 14:52

作者: gzgd    时间: 2018-3-27 14:52

作者: gzgd    时间: 2018-3-27 14:52

作者: gzgd    时间: 2018-3-27 14:52

作者: gzgd    时间: 2018-3-27 14:53

作者: gzgd    时间: 2018-3-27 14:53

作者: gzgd    时间: 2018-3-27 14:53

作者: gzgd    时间: 2018-3-27 14:53

作者: gzgd    时间: 2018-3-27 14:53

作者: gzgd    时间: 2018-3-27 14:53

作者: Haraella    时间: 2018-3-27 14:53
可以可以
作者: Haraella    时间: 2018-3-27 14:53

作者: Haraella    时间: 2018-3-27 14:53

作者: Haraella    时间: 2018-3-27 14:53

作者: Haraella    时间: 2018-3-27 14:54

作者: Haraella    时间: 2018-3-27 14:54

作者: Haraella    时间: 2018-3-27 14:54

作者: Haraella    时间: 2018-3-27 14:54

作者: Haraella    时间: 2018-3-27 14:54

作者: Haraella    时间: 2018-3-27 14:54

作者: Haraella    时间: 2018-3-27 14:54

作者: Haraella    时间: 2018-3-27 14:54

作者: zzzz2017    时间: 2018-3-27 14:55
不错不错
作者: 白猫    时间: 2018-3-27 14:55
可以可以




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