求指点一下第一个为啥会陷入无限循环,int k = input.nextInt();这个next函数为什么不能实现重新输入?必须在循环里创建新对象才能正常返回
package com.Project4;
import java.util.InputMismatchException;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
for(int i = 1;;){
try{
System.out.println("输入命令:1-按照书名查书;2-按照序号查书");
int k = input.nextInt();
System.out.println("输入完成");
break;
}catch(InputMismatchException e){
System.out.println("命令输入错误!请根据指令输入数字命令!");
}}}}
public class Test {
public static void main(String[] args) {
for(int i = 1;;){
Scanner input = new Scanner(System.in);
try{
System.out.println("输入命令:1-按照书名查书;2-按照序号查书");
int k = input.nextInt();
System.out.println("输入完成");
break;
}catch(InputMismatchException e){
System.out.println("命令输入错误!请根据指令输入数字命令!");
}}}}