我正在制作一个程序,为其添加成就。我将使用一些简单的代码来检查布尔值是否设置为false,然后才能获得成就private boolean hasAch1 = false;
但是每当我关闭应用程序时它将布尔值设置为false,我只是想知道是否有办法如果您已收到成就,请将布尔值设置为true吗?
答案 0 :(得分:1)
public static void main(String[] args) {
Runtime.getRuntime().addShutdownHook(new Thread() {
public void run(){
//save data here
System.out.println("Exiting");
}
});
}
但我不推荐它,因为计算机可能崩溃和许多其他问题。最好每5分钟左右自动保存一个文件。
答案 1 :(得分:0)
每次关闭应用程序时都要写一个外部文件,并在打开它时将其读回。这样您就可以跟踪变量。
答案 2 :(得分:0)
您可以使用序列化将类的实例保存到外部文件,下次可以读取文件并反序列化。
以下是您可以参考的示例 -
答案 3 :(得分:0)
如果要维护应用程序的状态,则有2个选项。
1. Serialize数据。
2.将数据存储在数据库中。
对于小型应用程序,您可以进行序列化。 在退出时提出保存状态的问题,@ WalterM已经回答了这一部分。