Scanner对象只要创建一次
不要重复创建
以下两种情况为重复创建
情况一:Scanner对象在for循环中
for(int i = 0; i < 3; i++){
Scanner sc = new Scanner(System.in);
}
情况二:Scanner在main方法中创建过,又在其它方法中重复创建,
static void fib() {
Scanner scan = new Scanner(System.in);
String str = scan.nextLine();
}
void sort() {
Scanner scan = new Scanner(System.in);
String str = scan.nextLine();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scan = new Scanner(System.in);
Main2 object = new Main2();
while (scan.hasNextLine()) { //由于while的存在,循环调用其它方法,等于变相使用Scanner多次声明
String choice = scan.nextLine();
switch (choice) {
case "fib":
fib();
break;
case "sort":
object.sort();
break;
case "search":
object.search();
break;
}
}
}
}