黑马程序员技术交流社区

标题: 关于Scanner读取一个整数nextInt()和读取一行nextLine()出现的问题 [打印本页]

作者: 李春林    时间: 2016-9-28 22:55
标题: 关于Scanner读取一个整数nextInt()和读取一行nextLine()出现的问题
Scanner获取数据时出现的并发修改异常问题的三种解决办法原因:因为在我们敲回车键的时候,在键盘相当于录入 \r\n,而这个\r\n不会被 nextInt方法会接收,但是nextLine方法会以这个\r\n作为结束标记,所以第二个数获取不到.

解决方法
案例: ```java package com.heima.scanner;
解决方案:调用多一次nextLine()方法
import java.util.Scanner;
public class Test3 {
public static void main(String[] args) {    Scanner sc = new Scanner(System.in);    System.out.println("请输入第一个数:");    int x = sc.nextInt(); // \r\n    //再次使用nextLine方法,让这个nextLine方法接收到\r\n就可以    sc.nextLine();    System.out.println("请输入第二个数:");    String line = sc.nextLine();    System.out.println("第一个数是:"+ x);    System.out.println("第二个数是:"+ line);}
作者: Fate_stay    时间: 2016-9-28 23:01
感谢分享!
作者: Liby94    时间: 2016-9-28 23:02

感谢分享!
作者: Liby94    时间: 2016-9-28 23:04
受教了
作者: Liby94    时间: 2016-9-28 23:07
是不是回复一个就有一个黑马币?




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