我现在打算制作一个允许用户输入身份证号码的程序
但我不知道怎么办,因为我不知道用户输入了多少身份证号码
例如:
如果我知道用户想要输入2个人的身份证号码,那么我的代码将是这样的:
//get 2 people's student ID
System.out.print("Enter the first people's student ID: ");
String ID1 = input.next();
System.out.print("Enter the second people's student ID: ");
String ID2 = input.next();
如果我知道用户想要输入3个人的身份证号码,那么我的代码将是这样的:
//get 3 people's student ID
System.out.print("Enter the first people's student ID: ");
String ID1 = input.next();
System.out.print("Enter the second people's student ID: ");
String ID2 = input.next();
System.out.print("Enter the third people's student ID: ");
String ID3 = input.next();
但是我知道用户将输入多少个号码。如果我不知道他们输入了多少号码,我该怎么做才能允许用户输入并存储他们输入的号码?
答案 0 :(得分:0)
这不是编程问题,这是一个设计问题。你必须设计你的程序,以便用户能够发出输入结束的信号,或者你应该继续使用相同的循环。
用户可能会使用特殊的EOF
字符来表示输入结束。这个角色基本上是CTRL-D
。或者,如果用户输入是从文件中提供的,则当文件结束时,EOF
会自动发送到您的程序。
或者您可以检查指示输入结束的特殊用户ID(例如-1)。或者您可以先询问ID的数量。或者您的程序可能会在单个ID后退出,用户可能会重新启动它。这一切都取决于你的设计。
在任何一种情况下,你都应该构建一个循环,这样你的程序就可以处理任意数量的输入。
答案 1 :(得分:0)
一个选项:
List<String> ids= new ArrayList<>();
while (true){
System.out.print("Enter ID: ");
String val = input.next();
if ( val.equals("done") )
break;
ids.add( val );
}