2012-06-29 45 views
7

Tôi có ArrayList>. Trong một hoạt động khác, tôi muốn truy cập tất cả các giá trị được lưu trữ trong ArrayList>.Cách lấy giá trị được lưu trữ trong ArrayList <HashMap <key,value>>?

Tôi đã thử đoạn mã sau:

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

for(Hashmap<String, String> map: mylist) { 
    for(Entry<String, String> mapEntry: map) { 
     String key = mapEntry.getKey(); 
     String value = mapEntry.getValue(); 
    } 
} 

nhưng nó cho thấy một lỗi ở for(Entry<String, String> mapEntry: map) rằng nó chỉ interate trên Array.

Trả lời

13

Mã của bạn có chút khác nhau cho dòng này,

for(Entry<String, String> mapEntry: map.entrySet()) 

Hãy thử điều này và cho tôi biết những gì xảy ra,

for (HashMap<String, String> map : mylist) 
    for (Entry<String, String> mapEntry : map.entrySet()) 
     { 
     String key = mapEntry.getKey(); 
     String value = mapEntry.getValue(); 
     } 
2

Hãy thử điều này thay vì:

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

    for(HashMap<String, String> map: mylist) { 
     for(Entry<String, String> mapEntry: map.entrySet()) { 
      String key = mapEntry.getKey(); 
      String value = mapEntry.getValue(); 
     } 
    } 

Lưu ý dòng mà nói for(Entry<String, String> mapEntry: map.entrySet())

2

thử này

 for(HashMap<String,String> map:myList){ 
      for(String str:map.keySet()){ 
       String key=str; 
       String value=map.get(str); 
      } 
     } 
1

Simple cách

Hãy thử điều này tôi hy vọng nó hoạt động cho u cũng ...

ArrayList<HashMap<String,String>> arraylist; 
for (int i=0;i<arraylist.size();i++) 
    { 
     HashMap<String, String> hashmap= arraylist.get(i); 
     String string= hashmap.get("Your_Key_Name"); 
    } 
+1

Cảm ơn bạn sir ... nó làm việc tốt –

Các vấn đề liên quan