2016-04-08 6 views
1

Was wäre der beste Weg, um zwei Listen in 2D-Array zu konvertieren? BeispielKonvertieren Sie zwei ArrayLists in String [] []

listA = {"A","B"} 
listB = {"1","2"} 

Ich möchte, dass sie konvertieren: array = {{A, 1}, { B, 2}}

Gibt es einen besseren Weg, als es mit manuell mit Schleifen zu tun?

+0

Bitte definieren "besser" ... – Seelenvirtuose

+3

ist es 'zip()' genannt und Sie können es ein paar Bibliotheken von Drittanbietern verwenden, wie Guava und Functional Java tun, jedes Mal mit ein paar Macken. – alamar

+0

http://stackoverflow.com/questions/17640754/ziping-streams-using-jdk8-with-lambda-java-util-stream-streams-zip –

Antwort

1

Ich bin mir nicht sicher, was Sie wollen. Einfach wie unten beschrieben. Hier nehme ich an, listA und listB sind gleiche Größe.

List<String> listA = new ArrayList<String>(); 
listA.add("A"); 
listA.add("B"); 
listA.add("C"); 
List<String> listB = new ArrayList<String>(); 
listB.add("1"); 
listB.add("2"); 
listB.add("3"); 
String[][] multi = new String[listA.size()][listB.size()]; 
for(int i=0; i < listA.size(); i++) { 
    multi[i] = new String[]{listA.get(i), listB.get(i)}; 
} 
System.out.println(multi[0][0] + "," + multi[0][1]); 
System.out.println(multi[1][0] + "," + multi[1][1]); 
System.out.println(multi[2][0] + "," + multi[2][1]); 

Ausgabe

A,1 
B,2 
C,3 
Verwandte Themen