ArrayList des int-Arrays in Java
Ich bin neu in das Konzept der arraylist. Ich hatte ein paar Zeilen Programm-code:
ArrayList<int[]> arl=new ArrayList<int[]>();
int a1[]={1,2,3};
arl.add(0,a1);
System.out.println("Arraylist contains:"+arl.get(0));
Gibt es die Ausgabe: Arraylist contains:[I@3e25a5
Nun meine Fragen:
- Wie die Anzeige den richtigen Wert, also 1 2 3.
- Wie kann ich den Zugriff auf die einzelnen element eines Arrays a1, d.h. wenn ich wissen will, den value-at-a1 - [1].
Kommentar zu dem Problem - Öffnen
Nur der Hinweis:
ArrayList
bedeutet nicht "Liste von Arrays", sondern eher eine Liste, ein array verwendet, intern. So könnte man mit ArrayList<Integer>
und tragen Sie Ihre Werte ein: arl.add(Integer.valueOf(1); ...
Ich interpretiere die Frage als Wunsch nach einer Liste-von-array von integer. Es scheint ziemlich offen. Sie versuchen get(0) und die Erwartung, dass der Wert [1,2,3]. Die meisten Antworten scheinen, um die Antwort auf die falsche Frage.
InformationsquelleAutor der Frage amv | 2012-05-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zunächst alle, für die Initialisierung eines container-Sie können nicht mit einem primitiven Typ (z.B.
int
; Sie könnenint[]
aber Sie wollen einfach nur eine Reihe von zahlen, sehe ich keinen nutzen). Verwenden Sie stattdessenInteger
wie folgt:Für das hinzufügen von Elementen, verwenden Sie einfach die
add
Funktion:Letzte, aber nicht zuletzt, für den Druck der
ArrayList
Sie können den build-in-Funktionalität vontoString()
:Wenn Sie möchten, um Zugriff auf die ich element, wo ich ist ein index von 0 bis Länge des Arrays-1, die Sie tun können, ein :
Schlage ich die Lektüre zunächst auf Java-Containern, bevor Sie die Arbeit mit Ihnen.
InformationsquelleAutor der Antwort Raul Rene
Verwenden
- Arrays.toString( arl.get(0) )
.arl.get(0)[1]
InformationsquelleAutor der Antwort trutheality
In java ein array ist ein Objekt. Daher der Aufruf an arl.get(0) gibt einen primitiven int [] - Objekt, das angezeigt wird als ascii in Ihrem Aufruf System.aus.
Die Antwort auf Ihre erste Frage ist daher
Wenn Sie auf der Suche nach bestimmten Elementen, die zurückgegeben wird int [] - Objekt muss referenziert werden, als solche.
Die Antwort auf Ihre zweite Frage, wäre so etwas wie
InformationsquelleAutor der Antwort Everyone
Einfacher als das.
In der ersten Linie, an der Sie das Objekt erstellen und im Konstruktor übergeben Sie ein array-parameter-Liste.
In der zweiten Zeile haben Sie alle Methoden der List-Klasse: .get (...)
InformationsquelleAutor der Antwort Karel Muñiz Perdomo
Alle Recht haben. Sie können nicht drucken, die ein int [] - Objekt direkt, aber es gibt auch keine Notwendigkeit, das nicht mit einer ArrayList mit integer-arrays.
Verwenden,
bedeutet Spaltung des String-Objekt in eine substring-wenn Sie möchten, legen Sie etwas dazwischen, wie Kommas.
Hier ist, was ich denke, amv war auf der Suche für ein int-array Sicht.
Diese Antwort ist ein wenig spät für ein amv, aber immer noch nützlich sein kann für andere.
InformationsquelleAutor der Antwort
Verwenden Sie
<Integer>
statt<int>
:InformationsquelleAutor der Antwort Nour
java.util.Arrays.toString()
konvertiert den Java-arrays zu einem string:InformationsquelleAutor der Antwort Rahul Naik
InformationsquelleAutor der Antwort GIGO
Setup:
Abrufen ein einzelnes int[] array in der ArrayList per index:
Abrufen alle int [] - arrays in der ArrayList:
Ausgabe-Formatierung kann durchgeführt werden basierend auf dieser Logik. Goodluck!!
InformationsquelleAutor der Antwort mtebong
Antwort zu Frage 1
Antwort zu Frage 2
InformationsquelleAutor der Antwort Chizoba Ogbonna