2012-11-20 22 views
0

我有一个类型的对象的列表如下,对象列表,以HashMap的

List<object> recordList

其中将包含数据库记录(整数,字符串)如下,

[[1,AAAAAAAA],[2,BBBBBB]] 

我需要拆分列表中的数据并将其放入 Hashmap<Integer,String>,如下所示,

我确定了如何将数据拆分为对象列出并弹出散列表。 如何使用列表中的数据填充Hashmap?

+1

是迭代不是一种选择? – specialscope

+1

'1,AAAAAAAA'单个属性还是两个不同? –

+0

是在String类型的列表中的每个条目? – Vikdor

回答

1
List<String> l = new ArrayList<String>(); 
Map<Integer,String> m = new HashMap<Integer, String>(); 
Iterator<String> ite = l.iterator(); 
while(ite.hasNext()) 
{ 
    String sTemp[] =ite.next().split(","); 
    m.put(Integer.parseInt(sTemp[0]), sTemp[1]); 
} 
0
HashMap<Integer, String> map = new HashMap<Integer, String>(); 

    for (MyObject element : list) { 
     if (element != null) 
      map.put(element.getInt(), element.getString()); 
    } 
+0

你可以解释一下你的答案,至少告诉你所做的假设(因为问题是相当模糊)。 – hyde

0

如果您List<object>包含Object[],你可以不喜欢它

HashMap<Integer,String> map = new HashMap<Integer, String>(); 
for(Object obj : recordList) { 
    Object[] objA = (String[]) obj ; 
    map.put((Integer) objA[0],(String) objA[1]); 
} 
0
package listHashMap; 
import java.util.*; 
public class MyList { 
    public static void main(String [] args) 
    { 
     List<String> aList=new ArrayList<String>(); 
     Map<Integer,String> aMap = new HashMap<Integer, String>(); 
     aList.add("AAAA"); 
     aList.add("BBBB"); 
     for(int i=0;i<aList.size();i++){ 
      aMap.put(i+1,aList.get(i)); 
     } 
     System.out.println(aMap.toString()); 

    } 

}