【发布时间】:2016-08-22 17:13:43
【问题描述】:
这个问题之前已经问过了。但是这些回复中的任何一个都没有解决我的问题。请有人帮忙。
我有两个 HashMap,
final HashMap<String,String> dataList = new HashMap<String,String>();
final HashMap<String,HashMap<String,String>> full = new HashMap<String,HashMap<String,String>>();
这是我的代码。
int i=0;
for(DataSnapshot snap : dataSnapshot.getChildren()) {
i++;
String id = "Name "+String.valueOf(i);
strArray.add(snap.child("email").getValue().toString());
String name = snap.child("FirstName").getValue().toString() + " " + snap.child("LastName").getValue();
dataList.put("Name", name);
dataList.put("Email",snap.child("email").getValue().toString());
dataList.put("Mobile", snap.child("Mobile").getValue().toString());
dataList.put("Birthdate", snap.child("birthdate").getValue().toString());
System.out.println("Datalist " + dataList);
full.put(id, dataList);}
我希望有,{Name 1 = {Birthdate=2012/02/15, Email=gwcsathsara@gmail.com, Mobile=, Name= },Name 2 = {Birthdate=2012/02/15, Email=xc, Mobile=8524, Name=Sdcc Kkn}}
但它会覆盖现有值。这是我得到的结果,
{Name 1={Birthdate=2012/02/15, Email=xc, Mobile=8524, Name=Sdcc Kkn}, Name 2={Birthdate=2012/02/15, Email=xc, Mobile=8524, Name=Sdcc Kkn}}
请有人帮我解决这个问题。如果您需要更多信息,请发表评论。 谢谢
【问题讨论】:
-
每次循环都使用相同的
Map实例。每次为dataList创建一个新的Map实例。
标签: java android string hashmap