具有多个值的Java数组

时间:2012-12-26 10:04:29

标签: java arrays multidimensional-array

我想创建一个多维数组,其中每个节点都有以下详细信息:

  1. 地名ex:“迈索尔”,“班加罗尔”
  2. 图标名称ex:“瀑布”,“野生动物”
  3. 放置距离ex:“200”,“123”
  4. 当我有超过30个值时,这是最好的方法吗?

    示例:

    “班加罗尔”,“200”,“城市”

    “迈索尔”,“100”,“历史性”

    我正在尝试在Android中填充列表数组,其中每行有三个细节 - 名称,图标,距离,所以我想在我的java类中临时填充该数据。

4 个答案:

答案 0 :(得分:21)

不要使用多维数组。使用简单的对象数组(或List):

public class Place {
    private String name;
    private String icon;
    private int distance;
    // constructor, methods skipped for brevity
}

...

private Place[] places = new Place[10];
// or
private List<Place> places = new ArrayList<Place>();

Java是一种OO语言。学习定义和使用对象。

答案 1 :(得分:3)

我认为最好的选择是创建自定义对象。

Class TestObject
{
    String Place,Icon,Distance;
    // Setter and Getter method
}

// Create object of class. Store your value using setter and getter method 
   and save object into list

List<TestObject> test = new ArrayList<TestObject>();
test.add(testObject); //

答案 2 :(得分:2)

使用元素中所需的属性创建一个类。

现在你可以创建这个类的对象数组。

class Place {
private String name;
private String icon;
private int distance;

public Place(String name,String icon,int distance){
  this.name=name;
  this.icon=icon;
  this.distance=distance;

} 

}

Place places[]=new Place[10];
places[0]=new Place("Mysore","wildlife",123); 
and so on

小心实例化对象,否则你将最终获得NullPointerException

答案 3 :(得分:1)

如果您不想创建单独的类。您也可以将JSON用于您的目的 JSON对象重量轻,可以非常容易地管理aaray数据。

喜欢:

    JSONObject jo = new JSONObject();
    JSONArray ja = new JSONArray();
    ja.put("Mysore");
    ja.put("wildlife");
    ja.put(123);
    jo.add(KEY, ja); // Adding array to JSON Object with key [KEY can be any unique value]

JSON易于阅读和管理。

它提供了许多功能而不是数组。