创建方法按名称获取列表

时间:2013-03-16 15:40:02

标签: java oop

我有以下类,它提供实体名称,其键和值为HashMap

import java.util.LinkedHashMap;

public class ObjectStructure {
private String entityName;
private LinkedHashMap<String, String> keyVal;

public String getEntityName() {
    return entityName;
}

public void setEntityName(String entityName) {
    this.entityName = entityName;
}

public LinkedHashMap<String, String> getKeyVal() {
    return keyVal;
}

public void setKeyVal(LinkedHashMap<String, String> keyVal) {
    this.keyVal = keyVal;
}

}

我还列出如下

private static List<ObjectStructure> JsonObj = new ArrayList<ObjectStructure>();

因为我得到JSON对象哪个列表我需要按名称提供列表的方法 (即entityName可以有多个条目,我想要特定实体获取 相应数据的清单)。我想我需要为它建立一个新课程,但我不确定如何设计它,任何想法?

2 个答案:

答案 0 :(得分:1)

我不太确定你在问什么,
但如果您询问如何从arraylist中返回entityName的某个ObjectStructure, 然后循环浏览ArrayList并将searchString与每个ObjectStructure的{​​{1}}进行比较。

如果您在entityNameObjectStructure内查找值 在ArrayList搜索右侧ArrayList。找到后,在ObjectStructure中搜索您要查找的密钥。

答案 1 :(得分:1)

您可以使用其他地图:

Map<String, Map<String,String>> entities;

外部地图的键是entityName,内部Map是键/值对的集合。要获取命名实体的键/值对,只需执行:

Map<String, String> keyValueMap = entities.get("MyEntity");