如何在HashMap(Android)中存储值?

时间:2012-01-20 05:59:03

标签: android hashmap

我在soap消息中工作,使用SAXparser检索存储在ArrayList中的值(来自Webservice)并且ArrayList工作正常,但我想存储在HashMap中,因为使用key来识别每个名称都有一定的SystemId,请任意一个帮助我

Thanks

I tried the code:

    public class SitesList 
    {
    private ArrayList<String> name = new ArrayList<String>();
private ArrayList<String> systemid = new ArrayList<String>();

    //Map <String,String> map =  new HashMap<String,String>();

    public ArrayList<String>  getName()
{
    return name;
}

public void setName(String nameString)   
{
    this.name.add(nameString);

    System.out.println("name  "+ name); 

}

public ArrayList<String>  getSystemId()
{
    return systemid;
}

public void setSystemId(String systemidString)   
{
    this.systemid.add(systemidString);

        System.out.println("systemid  "+systemid);


  }

2 个答案:

答案 0 :(得分:5)

你可以这样存储

你是arraylist的名字

private ArrayList<String> name = new ArrayList<String>();
像这样

和HashMap

HashMap<String, ArrayList<String>>h = new HashMap<String, ArrayList<String>>();

你可以像这样存储你的arraylist

h.put("name", name);

答案 1 :(得分:1)

如果您不需要保留条目的顺序,可以执行以下操作:

public class SitesList {
    private final Map <String,String> map =  new HashMap<String,String>();

    public Set<String> getNames() {
        return map.keySet();
    }

    public void add(String nameString, String systemidString) {
        map.put(nameString, systemidString);
    }

    public Collection<String> getSystemIds() {
        return map.values(); // may contain duplicates
    }
}