1

我从这样的数据库表中将对象添加到我的数组列表中:

private void fillArray() {

    for (People temp : peopleList) {

        nameT = temp.getFirstName();
        IDT = temp.getUserid();

        users.add((new User(IDT, nameT) {

           @Override
            public String toString() {
                return ID + "," + name;
            }
      }));
   }
}

为了在 arraList 中显示对象的元素,我通过覆盖 toString() 将它们分开,然后使用带有分隔符“,”的 Scanner。

private void fieldSplitter(String object) {

    Scanner inline = new Scanner(object).useDelimiter(",");

    IDT = inline.next();
    nameT = inline.next();

    JOptionPane.showMessageDialog(null, IDT + " " + nameT, "Success", JOptionPane.INFORMATION_MESSAGE);

    IDT = null;
    nameT = null;

}

这应该显示每个对象的所有不同元素。我得到的只是每次显示的数据库表中的最后一个条目,即使还有 4 个其他条目。我做错了什么?

4

1 回答 1

1

您应该使用类 User 的吸气剂来获得更清洁的东西:

users.add((new User(IDT, nameT) {
    @Override
    public String toString() {
        return getId() + "," + getName();
    }
}));
于 2013-11-13T10:55:59.857 回答