0

我如何在java中将其写为列表结构

在这种情况下,我希望结构是这样的,其中选项也是另一个的关键

称为样式的哈希图

options[{"value":"0","label":"zero"},{"value":"1","label":"one"},
   {"value":"2","label":"two"}]

在这里,如果我想访问 options[1].value 应该给我 1 和 options[2].label 应该给我两个。

我怎样才能做到这一点

LIst<Map<string><string[]>>?

我也可以将“选项”数组作为我的哈希映射中的键之一传递吗

     protected Map<String, String[]> getValueProperties(int view, Field field) {
 Map<String, String> properties = new   HashMap<String,String[]>();             
        properties.put("options", []);
        return properties
    }

我是处理这种格式数据的新手,任何指针都会很好

4

2 回答 2

1

使用这个数据结构:

List< Map<String, String> >
于 2012-10-29T21:39:11.923 回答
1

我认为这可以做到:

    List<Map<String,String>> options = new ArrayList<Map<String,String>>();

并填充为:

    Map<String, String> option1 = new HashMap<String, String>();
    option1.put("value", "0");
    option1.put("level", "zero");
    options.add(option1);
    Map<String, String> option2 = new HashMap<String, String>();
    option2.put("value", "1");
    option2.put("level", "one");
    options.add(option2);
    Map<String, String> option3 = new HashMap<String, String>();
    option3.put("value", "2");
    option3.put("level", "two");
    options.add(option3);

编辑:您可以在循环中填充列表,如下所示:

   List<Map<String,String>> options = new ArrayList<Map<String,String>>();

   String[] levels = {"zero", "one", "two"};
   for(int indx = 0; indx <levels.length; indx++){
      Map<String, String> option = new HashMap<String, String>();
      option.put("value", String.valueOf(indx));
      option.put("level", levels[indx]);
      options.add(option);
   }
于 2012-10-29T21:39:18.843 回答