A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

最近好多同学都问nextline空字符串的问题,小旭简单做了一下实验,希望能帮到有疑问的小伙伴们。
大家好多再问:nextint() 后加个nextline()输完整数后就不再让输字符串了。好多人解释前面读取了整数,nextLine直接读到了后面的回车换行。这是没有问题的。但很多小伙伴就有了疑问。

疑问1:nextint不都用过回车换行了么?为什么还对nextline起作用?
疑问2:如果再来一个nextline是不是还会去读那个回车换行?
疑问...:等等...

小编也是新人好奇,就简单做了一下实验
结论:nextint读取的是int值,读完就完事(后面遇到空格 tab 回车都算结束)。不会换行。
         而nextline是读一句,且会认为空格TAB也算字符串内容,必须碰到回车换行键才结束,会换行。
         可能看结论不太理解,小编语言不是很好,可以看下面的举例理解,新人勿喷。

测试一:单独执行nextint,打印结果;
       输入:“1” “空格”“ 2”,然后回车 ,打印结果为 :1。
测试二:执行两句nextint,打印结果;
       输入:“1” “空格”“ 2”,然后回车 ,打印结果为:第一句是 1第二句是 2。
测试三:执行一句nextint,执行一句nextline;
       输入:“1” “空格”“22  33  44”然后回车,打印结果:第一句是1  第二句是  22 33 44
测试四:一句nextint后再执行两句nextline:
       输入:”1“   然后回车,发现还能输。。
小编有点事,就不上图了自己多试试,结论就是:输入语句中nextline比较特殊读的是行,而其他的读的不是行,是自己的类型。
空字符串解决方法:1中间可new新对象;
                             2中间可加一句nextline让程序换行;
                               3换位置
                                 4用next代替
注:可留言给小编交流。

评分

参与人数 1黑马币 +3 收起 理由
8.16 + 3 很给力!

查看全部评分

2 个回复

倒序浏览
腾龙3158 来自手机 中级黑马 2016-4-4 12:39:09
沙发
学习了~~~
回复 使用道具 举报
找了所有资料都没有,顶一个------------
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马