我试图找到一种简单/有效的方法来为我的应用程序在每个索引下存储多个值,例如:
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")
};