Java新手:有没有更好的方法来编写这个简单的代码
不知怎的检测到一个空白输入 您可以使用,它为从流中读取提供了更简单的APIJava新手:有没有更好的方法来编写这个简单的代码,java,Java,不知怎的检测到一个空白输入 您可以使用,它为从流中读取提供了更简单的API Integer mNum = readInt("Please enter a membership number: "); 不确定是否是最好的,但可能是您想要的: private static void addMember() { Scanner sc = new Scanner(System.in).useDelimiter("\n"); while (true) { try {
Integer mNum = readInt("Please enter a membership number: ");
不确定是否是最好的,但可能是您想要的:
private static void addMember() {
Scanner sc = new Scanner(System.in).useDelimiter("\n");
while (true) {
try {
System.out.println("Please enter a membership number: ");
int mNum = sc.nextInt();
System.out.println("Please enter the member's name: ");
String mName = sc.next();
members.put(mNum, mName);
} catch (Exception e) {
break;
}
}
}
您可以尝试这个类:尝试代码复查堆栈。没有[标准]那样的一体化功能。另外,我建议使用
int
,除非需要Integer
。使用scanner,或者简单地将代码重构为实用程序方法。@pst我认为我必须使用Integer,因为HashMap只接受类型对象?@user1296058您部分正确,但可以为您解决这个问题。
private static void addMember() {
Scanner sc = new Scanner(System.in).useDelimiter("\n");
while (true) {
try {
System.out.println("Please enter a membership number: ");
int mNum = sc.nextInt();
System.out.println("Please enter the member's name: ");
String mName = sc.next();
members.put(mNum, mName);
} catch (Exception e) {
break;
}
}
}
try{
Integer mNum = Integer.parseInt(readLine("Please enter a membership number: "));
}catch (NumberFormatException e){
System.out.println("Error parsing membership number");
}