Das folgende ist ein Programm, das ich in Java geschrieben habe, um eine ArrayList zu drucken, aber wenn ich die Array-Liste drucke, bekomme ich die gleiche Karte immer und immer wieder gedruckt. sollte ich versuchen, eine andere Art von Datenstruktur zu verwenden, um es zu drucken. Wenn ich keine geeignete Methode finde, werde ich eine POJO-Klasse verwenden. Drucken einer ArrayList <HashMap>
import java.util.HashMap;
import java.util.ArrayList;
public class HelloWorld{
public static void main(String []args){
ArrayList<String> nlist = new ArrayList<String>();
ArrayList<String> alist = new ArrayList<String>();
nlist.add("Mich");
nlist.add("Aud");
alist.add("22");
alist.add("20");
HashMap<String,String> response = new HashMap<String,String>();
ArrayList<HashMap<String,String>> responseList = new ArrayList<HashMap<String,String>>();
for(int i=0; i< nlist.size(); i++){
response.put("Name",nlist.get(i));
response.put("Age",alist.get(i));
responseList.add(response);
}
System.out.println("Result="+responseList);
}
}
OUTPUT:
Result=[{Age=20 , Name=Aud},{Age=20 , Name=Aud}]
Sie rufen nur 'println()' einmal, so sehe ich nicht, wie Sie etwas "immer und immer wieder gedruckt". Kannst du deine Frage klären? –
Sie fügen Ihrer Liste die gleiche HashMap-Instanz mehrmals hinzu. Verschieben Sie 'HashMap response = new HashMap ();' in Ihre Schleife. –
Eran
Diese Art von Frage kommt so häufig vor, dass es eine kanonische Antwort dafür geben sollte. – shmosel