Zusammenfügen von zwei Arraylisten

butterfly84

Mitglied
Hallo,

ich würde gerne zwei ArrayLists so kombinieren, dass Zeile 1 von ArrayList1 gleich hinter Zeile 1 von ArrayList2 kommt. Also nicht untereinander sondern nebeneinander, weil ich diese Kombination später vergleichen will. Ist so etwas möglich?

Mfg
 

XHelp

Top Contributor
"nebeneinander" gibts nicht. Du könntest aber sowas wie
Code:
List<List>
machen, dann kannst du in einer Position mehrere Werte abspeichern. Oder eben eine eigene Klasse
Code:
Eintrag
machen.
 

nrg

Top Contributor
könntest sie schon so verbinden:

list1 wert1
list1 wert2
list1 wert3

list2 wert1
list2 wert2
list2 wert3

wird zu list3 mit:

list1 wert1
list2 wert1
list1 wert2
list2 wert2
list1 wert3
list2 wert3

glaube aber dein vorhaben ist einfacher/besser realisierbar :)
 

butterfly84

Mitglied
Vielen Dank für die schnelle Antwort, kannst Du vielleicht ein kleines Beispiel geben? Bin absolute Anfängerin und weiß nicht, wie du das meinst mit List<List> . :oops:
 

nrg

Top Contributor
das ist halt eine liste, die listen enhält. quasi eine 2D-Liste aber ich finde sowas sehr hässlich und bin auch der Meinung, dass man sowas nie bzw. sehr selten braucht.
was hast du denn allgemein vor?
 
G

Gast2

Gast
Java:
import java.util.ArrayList;
import java.util.List;
public class Test {
	public static void main(String[] argv) {

		List<String> list1 = new ArrayList<String>();
		List<String> list2 = new ArrayList<String>();

		List[] listen = new List[] { list1, list2 }; // oder auch eine Liste von
														// Listen, List<List>
														// halt

		list1.add("123");
		list1.add("3453");
		list1.add("fdsf");
		list1.add("456");

		list2.add("123");
		list2.add("asd");
		list2.add("sdfsf");
		list2.add("456");

		for (int i = 0; i < list1.size(); i++) {
			System.out.println(listen[0].get(i) + "\t|\t" + listen[1].get(i));
		}
	}
}

Code:
OUTPOUT:
123	|	123
3453	|	asd
fdsf	|	sdfsf
456	|	456
so zum Beispiel. Ob du jetzt ein Array von Listen nimmst, oder aber eine Liste von Listen ist da erstmal egal. Aber es gibt doch bessere Wege soetwas zu modelieren. Was möchtest du denn genau machen?
 

Sempah

Bekanntes Mitglied
oder wie Xhelp vorgeschlagen hat:

Java:
import java.util.ArrayList;
import java.util.List;


public class ListTest {

	public static void main(String[] args) {
		
		List<Eintrag> list = new ArrayList<Eintrag>();
		list.add(new Eintrag("abc", "def"));
		list.add(new Eintrag("abc", "de"));
		list.add(new Eintrag("abc", "defg"));
		
		for (Eintrag eintrag : list)
			System.out.println(eintrag.vergleiche());
	}
}

class Eintrag {
	private String eintrag1;
	private String eintrag2;
	
	public Eintrag(String eintrag1, String eintrag2) {
		this.eintrag1 = eintrag1;
		this.eintrag2 = eintrag2;
	}
	
	public boolean vergleiche() {
		return eintrag1.length() >= eintrag2.length();
	}
	
}
 

Volvagia

Top Contributor
Du könntest nach dem Füllen auch die Werte von List 2 in List 1 an jede 2. Stelle füllen. Wäre aber sicher nicht das schnellste, Linked würde das wohl sehr viel schneller hinkriegen. Aber soetwas wäre wohl noch sehr viel schneller und schöner:

Java:
public class ColMerger<T>
{
	private int colsPointer;
	private List<Collection<T>> colsList;

	public ColMerger()
	{
		super();
		colsPointer = 0;
		colsList = new ArrayList<Collection<T>>();
	}
	public void addCollection(Collection<T> col)
	{
		colsList.add(col);
	}
	public void add(T value)
	{
		int colsCount = colsList.size();
		if(colsCount == 0)
			throw new IndexOutOfBoundsException();
		
		colsList.get(colsPointer).add(value());
		incrPointer();
	}
	private void incrPointer()
	{
		int colsCount = colsList.size();
		colsPointer = (colsPointer != (colsCount - 1)) ? colsPointer + 1 : 0;
	}
	public T get(int i)
	{
		int colsCount = colsList.size();
		int j = i%colsCount;
		return(colsList.get(j).add(i / colsSize));
	}
}

(VHidT.)


Edit: Ups, war ich laaaaaaaaaaaaaahm.
 

butterfly84

Mitglied
Also ich habe eine Liste mit Polylines (Kanten) und eine Liste mit Rechtecken (Knoten), wo eine Überschneidung stattfindet. Jedoch tauchen hier auch die Polylines auf, bei deinen keine wirkliche Überschneidungen existieren, also die Kante geht nicht durch den Knoten, sondern berührt halt nur den Rand.

Eine Überschneidung ist ja nur vorhanden wenn eine Polyline ein Rechteck zweimal durchquert. Also dachte ich mir ich verbinde diese beiden Listen und die, die doppelt sind zeigen die Überschneidung. Das kann man bestimmt eleganter lösen, aber wie gesagt bin noch unerfahren.
 

Volvagia

Top Contributor
Wenn ich das jetzt richtig verstanden habe, schau dir mal Rectangle#intersects(Rectangle) an. Damit kannst du Überschneidungen einfach prüfen, und musst dafür keine Listeinträge kontrollieren. ^^ (Was der Verständlichkeit sicher auch zu Gute kommt.)
 

butterfly84

Mitglied
Ich muss die Überprüfung für UML-Klassendiagramme machen, die in XFig gezeichnet werden. D.h. ich hab ne Fig-Datei aus der ich alle Infos hole, deshalb die Listen.
 

LP_SE

Aktives Mitglied
Ich würde einfach eine dritte Liste nehmen:

list 3 wert1 => list1 wert1
list 3 wert2 => list2 wert1
list 3 wert3 => list1 wert2
list 3 wert4 => list2 wert2
list 3 wert5 => list1 wert3
list 3 wert6 => list2 wert3

und dann die Liste übergeben oder auf list 1 übertragen ...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Zwei sortierte Subarrays mit gleicher Länge zusammenfügen Java Basics - Anfänger-Themen 2
O zwei Arrays nach Werten durchsuchen und zusammenfügen Java Basics - Anfänger-Themen 3
N Methoden Zwei Zahlen nach dem Reißverschluss-*‐Prinzip zusammenfügen und ausgeben. Java Basics - Anfänger-Themen 4
W zusammenfügen von zwei Klassen Java Basics - Anfänger-Themen 9
A Thread XML-Dateien zusammenfügen Java Basics - Anfänger-Themen 11
C Wie 2 Arrays zusammenfügen und sortieren? Java Basics - Anfänger-Themen 11
E sortierte Arrayteile zusammenfügen Java Basics - Anfänger-Themen 0
F Mehrere Zeilen zu einer Zeile zusammenfügen und in eine Datei schreiben Java Basics - Anfänger-Themen 1
A Arrays zusammenfügen Java Basics - Anfänger-Themen 3
C Arrays zusammenfügen mit abwechselnden Werten Java Basics - Anfänger-Themen 3
L BufferdImage schwarzes Bild nach zusammenfügen zweier Bilder Java Basics - Anfänger-Themen 8
W 2 JPanels in 2Klasse in einem JFrame zusammenfügen Java Basics - Anfänger-Themen 12
Z Mehrere XML-Dateien zu einer zusammenfügen Java Basics - Anfänger-Themen 3
C Beliebige Anzahl Arrays zusammenfügen Java Basics - Anfänger-Themen 5
B FileWriter und JFileChooser zusammenfügen Java Basics - Anfänger-Themen 3
I Xml dateien zusammenfügen Java Basics - Anfänger-Themen 12
B mehrere Abfragen zusammenfügen Java Basics - Anfänger-Themen 3
D Arrays zusammenfügen und in einem Array ausgeben Java Basics - Anfänger-Themen 3
P Arrays abwechslend zusammenfügen Java Basics - Anfänger-Themen 31
P Matrizen zusammenfügen Java Basics - Anfänger-Themen 8
FreddyStepp Bilder zusammenfügen Java Basics - Anfänger-Themen 7
A 2 arrays zusammenfügen Java Basics - Anfänger-Themen 5
T Einzelne Ziffer zusammenfügen (ohne Strings oder Arrays) Java Basics - Anfänger-Themen 2
G int zusammenfügen NICHT addieren Java Basics - Anfänger-Themen 9
M Graphen zusammenfügen Java Basics - Anfänger-Themen 2
M String und Integer zusammenfügen? Java Basics - Anfänger-Themen 4
G Feld bzw. Arrays erweitern oder zusammenfügen Java Basics - Anfänger-Themen 4
Torschti Eingabe von Dezimalzahlen (bis zu zwei Kommastellen) Java Basics - Anfänger-Themen 11
A 1 Leerzeichen durch zwei Leerzeichen ersetzen Java Basics - Anfänger-Themen 4
K Warum wird mir hier nach dem ersten Durchlauf zwei mal "welchen Datentyp wollen sie übergeben?" ausgegeben ? Java Basics - Anfänger-Themen 1
sasnitzer java augensumme von zwei würfeln ist 1 Java Basics - Anfänger-Themen 8
krgewb Double mit zwei Nachkommastellen Java Basics - Anfänger-Themen 2
Distanz zwischen zwei Zeichenfolgen in einem String bestimmen Java Basics - Anfänger-Themen 5
D Größtes Palindrom Produkt aus zwei dreistelligen Zahlen Java Basics - Anfänger-Themen 60
berserkerdq2 Habe zwei exceptions, welche ist ein Kommunikationsfehler und welche ein Ausgabefehler? Java Basics - Anfänger-Themen 4
berserkerdq2 Zwei Klassen Erben von der Klasse A, die eine Klasse kann ich an Methoden übergeben, die als Parameter A haben, die andere nicht? Java Basics - Anfänger-Themen 3
B Erste Schritte Bisektion mit zwei Funktionen? Java Basics - Anfänger-Themen 1
G zwei Instanzen einer Klasse Java Basics - Anfänger-Themen 29
A Java-XSSFBook: zwei Sheets mergen Java Basics - Anfänger-Themen 5
C Zwei Arrays addieren und ausgeben Java Basics - Anfänger-Themen 3
J Speichern von zwei Variablen durch Auslesen aus einem Numberfield Java Basics - Anfänger-Themen 2
D Zwei verschiedene Intellij Projekte, wie benutze ich wechselseitig objekte Java Basics - Anfänger-Themen 8
berserkerdq2 Wie würde man einen regulären Ausdruck in Java schreiben, der prüft, dass zwei bestimtme Zahlen nicht nebeneinadner sind? Java Basics - Anfänger-Themen 3
K mit <<1 kann man mal 2 machen, mit >>2 geteilt durch zwei und was bewirkt <<<1 und >>>1? Java Basics - Anfänger-Themen 5
Dorfschmied Kartesisches Produkt von zwei Liste mit Hashmaps<String,String> erstellen Java Basics - Anfänger-Themen 4
F Abstand zwischen zwei Objekten berechnen wie? Java Basics - Anfänger-Themen 1
M Wie kann ich ein Array in zwei Hälften aufteilen? Java Basics - Anfänger-Themen 12
S Längster Pfad zwischen zwei Vertices in einem Graph Java Basics - Anfänger-Themen 3
S Aktuell beste Methode um zwei Bilder zu vergleichen..? Java Basics - Anfänger-Themen 1
A Zwei XML-Dateien Mergen Java Basics - Anfänger-Themen 14
U Erste Schritte nextGaussian zwischen zwei Werten Java Basics - Anfänger-Themen 19
S Multiplikation von zwei Labels Java Basics - Anfänger-Themen 7
U zwei 2D arrays auf gleich sein überprüfen Java Basics - Anfänger-Themen 14
Bademeister007 Elemente aus zwei verschiedenen Arrays miteinander vergleichen und gegeben falls entfernen Java Basics - Anfänger-Themen 14
Düsseldorf2002 Datentypen Zwei dimensionale LinkedList Java Basics - Anfänger-Themen 8
S Objekte von zwei klassen in zwei verschiedene Textdateien schreiben Java Basics - Anfänger-Themen 5
J Zwei Objekte vergleichen Java Basics - Anfänger-Themen 8
X Zwei Dimensionales Array prüfen Java Basics - Anfänger-Themen 1
G Methoden Informationen aus zwei Objekte bekommen? Java Basics - Anfänger-Themen 6
E Wie gebe ich alle Daten zwischen zwei Zeitpunkten aus? Java Basics - Anfänger-Themen 2
Q Besitzen zwei Strings identische Buchstaben, nur in anderer Reihenfolge? Java Basics - Anfänger-Themen 10
pkm Regexproblem - Wie kann ich zwei oder mehr beliebige Zeichen matchen? Java Basics - Anfänger-Themen 7
A Wieso bekomme ich hier zwei unterschiedliche Ausgaben? Java Basics - Anfänger-Themen 6
H Ein gegebenes Int Array zu Zwei Arrays zurück geben Java Basics - Anfänger-Themen 6
J zwei String Arrays miteinander vergleichen Java Basics - Anfänger-Themen 18
R Methode zwei Sortierkriterien der Klasse Comparator übergeben Java Basics - Anfänger-Themen 4
B Collections.sort mit zwei Bedingungen? Java Basics - Anfänger-Themen 4
X Textdatei: zwei-zeilenweise gleiche Zeilen rausschmeißen Java Basics - Anfänger-Themen 21
M Konkatenation von zwei Strings Java Basics - Anfänger-Themen 6
J Problem beim vergleich von zwei Integer Java Basics - Anfänger-Themen 3
D Input/Output Input von zwei Koordinaten validieren und anschließend Werte speichern Java Basics - Anfänger-Themen 7
F Zwei Dimensionles Array Java Basics - Anfänger-Themen 21
I Alle Elemente von zwei Listen vergleichen Java Basics - Anfänger-Themen 1
J Inhalte von zwei Arrays vertauschen?! Java Basics - Anfänger-Themen 6
A Wie zwei zahlen in einer Variable speichern? Java Basics - Anfänger-Themen 7
N Zwei Daten (Datum) miteinander vergleichen, abspeichern, laden Java Basics - Anfänger-Themen 4
X Threads Zwei Threads, aber doppelte Ausgabe verhindern (synchronized) Java Basics - Anfänger-Themen 54
B Relativen Anteil von zwei Datümer auf Monatsebene umrechnen Java Basics - Anfänger-Themen 130
W Zwei Programme sollen auf eine Klasse zugreifen Java Basics - Anfänger-Themen 18
B Rückgabe von zwei Werten: String und double Java Basics - Anfänger-Themen 14
J Zwei Klassen die sich gegenseitig referenzieren - Bad practice? Java Basics - Anfänger-Themen 4
B Anzahl von Stunden / Tage von zwei Datumswerten ermitteln Java Basics - Anfänger-Themen 1
L Erste Schritte Elemente zwei Schlangen vergleichen Java Basics - Anfänger-Themen 14
N Zwei Strings mit "==" vergleichen warum TRUE Java Basics - Anfänger-Themen 2
D Input/Output InputDialog mit zwei Inputfeldern? Java Basics - Anfänger-Themen 4
D Funktion zwei Arraylisten zu verleichen ob gleich funktioniert nicht Java Basics - Anfänger-Themen 26
S Daten aus zwei Verschiedenen Tabellen in eine ArrayListe Java Basics - Anfänger-Themen 4
D Zwei Strings sind gleich bei if aber nicht true Java Basics - Anfänger-Themen 2
E Best Practice Jar-file mit zwei Klassen und externer Bibliothek über Konsole erzeugen Java Basics - Anfänger-Themen 13
J Logging erzeugt zwei dateien.... Java Basics - Anfänger-Themen 7
S zwei-dimensionales Array Java Basics - Anfänger-Themen 20
R Zwei Attribute gleichzeitig ausgeben Java Basics - Anfänger-Themen 12
javajoshi Problem mit zwei Threads und Arrays (Runnable) Java Basics - Anfänger-Themen 12
T Classpath Zwei gleiche Dateinamen in verschiedenen Projekten möglich? Java Basics - Anfänger-Themen 13
H Bubblesort-Zwei Integer auf Dekade vergleichen. Java Basics - Anfänger-Themen 6
M Wie erzeuge ich die Differenz von zwei Daten in Stunden?? Java Basics - Anfänger-Themen 2
L Den Winkel zwischen zwei Vektoren berechnen! Java Basics - Anfänger-Themen 2
jaleda100 KeyCode – zwei Tasten gleichzeitig Java Basics - Anfänger-Themen 2
M Methoden Zwei Methoden in einem Program laufen lassen...aber wie? Java Basics - Anfänger-Themen 2
M Methoden zwei methoden gleichzeitig laufen lassen Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben