我试图找到一种简单/有效的方法来为我的应用程序在每个索引下存储多个值,例如:

1 = {54, "Some string", false, "Some other string"}
2 = {12, "Some string", true, "Some other string"}
3 = {18, "Some string", true, "Some other string"}


因此,我可以将其设置为静态变量,然后可以通过单个索引值(每个对象中的唯一变量)从各种对象实例访问该变量。本质上,有点像“多维词典”。

我看过2D数组,但它们似乎仅限于单个数据类型(Int,字符串等),还看过哈希图-看起来也很有限,就好像使用两个以上的值一样,这将需要一个列表变量回到单一数据类型问题。有什么建议可以解决这个问题吗?

最佳答案

为这些条目定义一个类,并使用对象数组。因此,该类可能类似于:

class Thingy {
    private int someNumber;
    private String someString;
    private boolean someBool;
    private String someOtherString;

    public Thingy(int _someNumber, String _someString, boolean _someBool, String _someOtherString) {
        this.someNumber = _someNumber;
        this.someString = _someString;
        this.someBool = _someBool;
        this.someOtherString = _someOtherString;
    }

    public int getSomeNumber() {
        return this.someNumber;
    }
    // ...setter if appropriate...

    // ...add accessors for the others...
}


...然后您执行以下操作:

Thingy[] thingies = new Thingy[] {
    new Thingy(54, "Some string", false, "Some other string"),
    new Thingy(12, "Some string", true, "Some other string"),
    new Thingy(18, "Some string", true, "Some other string")
};

10-08 14:23