在询问用户输入后如何让我的程序继续?

时间:2013-10-01 03:53:14

标签: java

我必须在College类中创建ArrayList个学生,arraylist中的每个对象都包括姓名,studentid,地址和quizscore

我正在研究测试人员类,我需要我的程序继续运行以创建一个大型arrayList,这样我就可以执行命令,例如,查找查找学生数或查找最高分数。

我已经创建了这样的方法,并且在我的测试器类中我实现了Scanner来从键盘获取命令,但在它执行命令后,即添加学生它终止程序,所以当我想回顾我刚刚添加的内容时(例如“查找”)程序已终止,新创建的对象消失。

我可以对我的测试人员类做些什么来保持它“正常运行”并允许数组列表增长。

4 个答案:

答案 0 :(得分:1)

要在程序执行之间保留数据,您需要保留它。通常的方法是以某种格式将其写入文件。如果ArrayList中的对象是可序列化的,您可以简单地将整个数组写入ObjectOutputStream,写入FileOutputStream进行保存,然后在下一个程序启动时通过包装ObjectInputStream周围的FileInputStream

在网上搜索 Java数据持久性,找到许多持久化数据的方法,包括我的建议和许多教程代码的替代方法。

答案 1 :(得分:0)

问题不明确。如果你想让数组保持程序运行。优选地,多线程程序具有永无止境循环中的线程。但是如果你想坚持添加一个数据库。

答案 2 :(得分:0)

如果我理解你的问题并且我的猜测是正确的:

保持程序运行您可以使用while循环,直到命令等于“退出”或其他内容,例如

while(command.compareTo("quit")!=0) {
      //your code here
}

这样你的程序就会运行,直到你输入quit来终止它。

您可以将数组中的数据写入txt文件,并在每次程序启动时加载它。这样你就可以保存数据。

答案 3 :(得分:-2)

为ArrayList使用私有实例变量,以便程序在方法终止后跟踪它。

您可以这样声明:

private ArrayList nameOfYourList;