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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 一个人走天下 中级黑马   /  2015-11-8 14:20  /  973 人查看  /  11 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

       
                Scanner sc = new Scanner(System.in);
                System.out.println("输入第一个字符串");
                String x = sc.nextLine();
                System.out.println("输入第二个字符串");
                String y = sc.next();
                System.out.println("x = "+ x +"y ="+ y);
               
                里面的  next  和  nextLine   有什么区别?
               分别在哪里用?   求大神指导

11 个回复

倒序浏览
next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符。而nextLine()方法的结束符只是Enter键,即nextLine()方法返回的是Enter键之前的所有字符,它是可以得到带空格的字符串的。
回复 使用道具 举报
ly631960324 发表于 2015-11-9 00:36
next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符 ...

那输入
ZB   C Tab键DEF   后
String str = next()   str是不是=ZB啊?再下次next()就是C,再下次就是DEF么?
回复 使用道具 举报
6666666666666666
回复 使用道具 举报
我的理解是:nextLine 可以录入字符串!所以也是过来取经的!希望也能弄清楚这两者的区别!
回复 使用道具 举报
ly631960324 发表于 2015-11-9 00:36
next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符 ...

哦,我试试,谢谢
回复 使用道具 举报
看大神解题来了
回复 使用道具 举报
来学习的。。。。。。。。。。。。
回复 使用道具 举报
其实看看API文档就知道了
回复 使用道具 举报
478883662 发表于 2015-11-9 08:59
那输入
ZB   C Tab键DEF   后
String str = next()   str是不是=ZB啊?再下次next()就是C, ...

结果就是x = ZB,  y = C
回复 使用道具 举报
ly631960324 发表于 2015-11-10 01:26
结果就是x = ZB,  y = C

懂了,谢楼主
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马