当在同一个项目是多次嵌套使用scaner时,不能不停的去新建Scanner对象,而应该是使用同一个Scanner,否则会报错,因为system.in只有一份.

如下定义一个类才是符合要求的:

public class useScanner{

  public static Scanner scanner(){

    Scanner in = new Scanner(System.in);

    return in;

  }

}

 

这样能够确保使用的始终是同一个Scanner对象!而且对于调用Scanner的方法来说没有一点影响.因为返回的是一个Scanner的对象!