next()与nextLine()的区别
next()与nextLine()的区别
chengzequn5210 发表于1年前
next()与nextLine()的区别
  • 发表于 1年前
  • 阅读 154
  • 收藏 0
  • 点赞 0
  • 评论 0

【腾讯云】新注册用户域名抢购1元起>>>   

在写代码的时候遇见了这样一个问题

int n=sc.netInt();

String s=sc.nextLine();

System.out.print();

结果输完一个数字,回车后直接就执行输出语句了,并没有等我输字符串。

what?fuck?

下面听我细细道来

nextLine()的输入是碰到回车就终止输入,而next()方法是碰到空格,回车,Tab键都会被视为终止符,所以next()接收的字符串不会带空格。

如果在next()方法后紧跟nextLine()方法,nextLine()方法会吃掉next()的回车符,造成第二个字符串接受了回车符

在上面的例子中,我输入一个数字回车后,nextLine()接收了回车符(并不是没有执行),所以就会执行下面的操作。

对于这种情况我们可以加一行nextLine()来接收掉next(),nextInt()后的回车符

int n=sc.netInt();

String s=sc.nextLine(); //用来吞掉回车符

String s=sc.nextLine();

System.out.print();

欢迎访问我的个人博客http://www.chengzequn.top

标签: Java
  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 0
博文 20
码字总数 17100
×
chengzequn5210
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: