Java 以适当的面向对象方法存储数据

Java 以适当的面向对象方法存储数据,java,swing,oop,Java,Swing,Oop,目前,我已经编写了一个程序,允许用户向JTable添加数据,将JTable内容保存到txt文件,并从该文件加载数据。我的txt数据文件如下所示: Apple;Food;50 #### Vibrador;Electronics;125 #### 我想为进一步的搜索选项添加时间戳,我认为通过迭代整个文件并选择每个第四项(例如)来过滤数据并不是一种有效的方法(我可以每1个文件分离1列,但请稍等……OOP?)。所以我的问题是如何以面向对象的方式实现我的数据 谢谢你抽出时间 您应该为记录创建一

目前,我已经编写了一个程序,允许用户向JTable添加数据,将JTable内容保存到txt文件,并从该文件加载数据。我的txt数据文件如下所示:

 Apple;Food;50
 ####
 Vibrador;Electronics;125
 ####
我想为进一步的搜索选项添加时间戳,我认为通过迭代整个文件并选择每个第四项(例如)来过滤数据并不是一种有效的方法(我可以每1个文件分离1列,但请稍等……OOP?)。所以我的问题是如何以面向对象的方式实现我的数据


谢谢你抽出时间

您应该为记录创建一个模型类:

模范班 接下来,使用一个解析器类读取txt文件并创建记录对象列表。您的解析器可以返回这样一个列表:

List<Record> records = new ArrayList<Records>();
List records=new ArrayList();
搜索 当你想搜索你的数据时,只需遍历列表并收集匹配项。例如,如果要查找“食品”类别中的所有项目,可以执行以下操作:

String searchCategory = "food";
List<Record> matches = new ArrayList<Records>();

for (Record r : records)
{
    String currentCategory = r.getCategory();

    // this will do case-insensitive matches
    if (currentCategory.equalsIgnoreCase(searchCategory))
    {
        matches.add(r);
    }
}
String searchCategory=“食品”;
列表匹配项=新的ArrayList();
用于(记录r:记录)
{
字符串currentCategory=r.getCategory();
//这将进行不区分大小写的匹配
if(currentCategory.equalsIgnoreCase(searchCategory))
{
匹配。添加(r);
}
}

你到底想问什么?而且你的链接对我不起作用。根本不确定你在问什么。让我们看看代码吧!这就是整个计划。例如,我在问如何将数据存储在类中而不是txt文件中。如何以面向对象的方式存储数据。不是把所有的单元格都存储成字符串,而是像和对象一样。你是在找mySQL这样的数据库软件吗?
String searchCategory = "food";
List<Record> matches = new ArrayList<Records>();

for (Record r : records)
{
    String currentCategory = r.getCategory();

    // this will do case-insensitive matches
    if (currentCategory.equalsIgnoreCase(searchCategory))
    {
        matches.add(r);
    }
}