如何给我简单的Java程序存储空间?

时间:2019-06-01 19:16:41

标签: java memory persistence

我是编程新手,我有一个简单的程序正在玩,它很有趣,可以跟踪我的钱。例如,我希望它记录我的钱包里有多少钱。因此,我将给它一些数据,并且它符合要求。但是,例如,当我在其他时间重新运行该程序以从我的钱包中增加或减少钱款时,它将恢复为0,而不是保存以前所做的更改。

我假设我必须为此数据保存一个txt文件,然后在每次运行该程序时都读取它?

//here is my wallet class
public class Wallet extends UserInterface{

    public String WalletName;
    public double WalletCash;

    public Wallet(String name) {
        this.WalletName = name;

    }

    public String addCashtoWallet(double income) {
        WalletCash += income;
        return "Added $" + income + "to " + this.WalletName;
    }

    public String removeCashfromWallet(double cost) {
        WalletCash -= cost;
        return "Removed $" + cost + "from " + this.WalletName;
    }

}

例如,当我向钱包中加钱时,输出将是 “您的钱包现在有64.0美元,您想做其他事情吗” 但是,当我再次运行该程序时,它将显示为0,但是我希望它显示我之前添加的64美元。如何保存该数据?

2 个答案:

答案 0 :(得分:0)

您可以使用文件保留信息并在启动时加载信息。

https://stackabuse.com/reading-and-writing-files-in-java/

或者您可以使用数据库保存该信息。

https://www.tutorialspoint.com/jdbc/jdbc-sample-code.htm

我建议您先尝试使用文件,然后再尝试使用数据库(例如MySQL,MariaDB,PostgreSQL)

答案 1 :(得分:0)

它不是“内存”,而是“持久存储”。

像我一样,简单的TXT文件是最糟糕的解决方案。我建议您至少使用JSON之类的结构化文件,但最好使用HSQLDB之类的嵌入式数据库。