2016-07-11 5 views
0

Ich habe eine AttrList, die eine Liste von Attributen mit ihrem Namen (Schlüssel) und ihrem Wert enthält. Ich möchte alle auf Object[] kopieren.So konvertieren Sie die Attributliste (wie eine Karte) in Objekt []

Verfügbare Methoden in der attrList-Struktur: getName(i), getValue(i) und size().

Wie kann ich es konvertieren/kopieren?

Object[] result = new Object[attrList.size()]; 

for(int i=0; i < attrList.size(); i++) { 
     result[i] = ? 
} 

Vielen Dank im Voraus :)

Antwort

0

Wenn Sie sicher, dass Sie Ihr Ergebnis in einem Object [] setzen möchten, können Sie es tun so:

Object[] result = new Object[attrList.size()]; 

for(int i=0; i < attrList.size(); i++) { 
    result[i] = new Object[]{attrList.getName(i), attrList.getValue(i)}; 
} 

Jedes Element Ihres Object [ ] wird eine weitere Reihe von Objekten sein, die aus zwei Elementen bestehen. Aber es wird schwer sein, Schlüssel und Werte daraus zu bekommen.

Wenn Sie ein geeignetes Objekt speichern Ihr Ergebnis möchten, können Sie eine HashMap verwenden und den Schlüssel in jedem Element setzen und den Wert Ihrer Ergebnis:

HashMap<Object, Object> result = new HashMap<Object, Object>(); 

for(int i=0; i < attrList.size(); i++) { 
    result.put(attrList.getName(i), attrList.getValue(i)); 
} 
Verwandte Themen