2013-07-29 47 views
5

tôi có dữ liệu lấy từ webservice của tôi trongArrayList <HashMap <String, String >> để String []

ArrayList<HashMap<String,String>> 

Bây giờ tôi muốn chuyển đổi từng đối tượng ở trên để

String[] 

cách tôi có làm điều này không bất kỳ trợ giúp nào sẽ được đánh giá cao!

+0

nó chứa dữ liệu thu được từ một WebService phục vụ dữ liệu json. tôi cần trích xuất từng trường dưới dạng mảng chuỗi để đưa chúng vào các chế độ xem khác nhau như viwepagers và chế độ xem danh sách. –

+1

http://stackoverflow.com/questions/1090556/java-how-to-convert-hashmapstring-object-to-array.check điều này có thể hữu ích. – Raghunandan

+0

Trong mảng bạn muốn đặt các khóa, giá trị của băm hoặc cả hai? – Alberto

Trả lời

6

thử

ArrayList<HashMap<String, String>> test = new ArrayList<HashMap<String, String>>(); 
HashMap<String, String> n = new HashMap<String, String>(); 
n.put("a", "a"); 
n.put("b", "b"); 
test.add(n); 

HashMap<String, String> m = test.get(0);//it will get the first HashMap Stored in array list 

String strArr[] = new String[m.size()]; 
int i = 0; 
for (HashMap<String, String> hash : test) { 
    for (String current : hash.values()) { 
     strArr[i] = current; 
     i++; 
    } 
} 
1

Việc sử dụng cho Hashmap phải là chỉ mục của HashValues ​​để tìm các giá trị nhanh hơn nhiều. Tôi không biết lý do tại sao bạn có Key và giá trị như Strings nhưng nếu bạn chỉ cần các giá trị bạn có thể làm điều đó như thế:

ArrayList<HashMap<String, String>> test = new ArrayList<>(); 
String sum = ""; 
for (HashMap<String, String> hash : test) { 
    for (String current : hash.values()) { 
     sum = sum + current + "<#>"; 
    } 
} 
String[] arr = sum.split("<#>"); 

Nó không phải là một cách tốt đẹp, nhưng yêu cầu không phải là nó quá;)

+0

cảm ơn bạn Việc làm của nó :) –

0
ArrayList<HashMap<String, String>> meterList = controller.getMeter(); 

HashMap<String, String> mtiti = meterList.get(0);//it will get the first HashMap Stored in array list 

String[] strMeter = new String[mtiti.size()]; 

String meter = ""; 
for (HashMap<String, String> hash : meterList) { 
    for (String current : hash.values()) { 
     meter = meter + current + "<#>"; 
    } 
} 
String[] arr = meter.split("<#>"); 
Các vấn đề liên quan