用Java创建自定义集合

时间:2014-08-14 19:21:11

标签: java inheritance collections

我不太确定如何做到这一点,但我发现自己在这个特定的项目中经常使用列表。我想我想把它重构成它自己的收藏品。基本上,它是用户及其属性的列表。我使用的对象是List<List<String>>。我想我想做一个可以延伸ArrayList并将其称为UserList或类似内容的替代品。

注意:我唯一真正的目标是不要在任何地方输入List<List<String>>

最好的方法是什么?

编辑:谢谢。我想我知道有些事可能会更好。只是不能完全把手指放在上面。我最初避免创建User类,因为我不确定如何轻松地遍历属性。

2 个答案:

答案 0 :(得分:5)

无需为这些要求创建自定义List<List<String>>

创建一个User类来存储所有属性,然后创建一个List<User>

答案 1 :(得分:3)

你不应该。

你会花更多的时间来写这个新课,而不仅仅是输入一些额外的字符。

如果你真的想创建一个新课程。

为什么不喜欢这个?

public class User {

    private String attribute1;
    private String attribute2;
    //etc.

    public String getAttribute1() {
        return attribute1;
    }

    public void setAttribute1(String value) {
        attribute1 = value;
    }

    public String getAttribute2() {
        return attribute2;
    }

    public void setAttribute2(String value) {
        attribute2 = value;
    }

    //etc.
}

如果坚持使用嵌套的List

我建议创建一个看起来像这样的包装类:

public class Users {

    private List<List<String>> twoDList;

    public String get(int x, int y) {
        return twoDList.get(y).get(x);
    }

    public void set(int x, int y, String value) {
        twoDList.set(y, twoDList.get(y).set(x, value));
    }

    //etc.
}
相关问题