Sehen Sie sich diesen Vergleich an .
Wie Sie sehen können, gibt es wichtige Unterschiede zwischen den beiden Konstrukten. Sie finden APIs, die das eine oder das andere (oder beide) verwenden, und Sie müssen die Vor- / Nachteile und die funktionalen Unterschiede zwischen den beiden verstehen.
Ein besonderer Unterschied besteht darin, dass ein systemeigenes Array Grundelemente ohne die Unzulänglichkeiten beim Boxing / Unboxing speichern kann. Das ist wichtig, wenn Sie große Arrays haben, die Datenströme / Datensätze darstellen.
Beachten Sie auch, dass eine ArrayList
nicht Kovariante ist. Das heißt, ein Integer[]
ist ein Number[]
, aber ein ArrayList<Integer>
ist kein ArrayList<Number>
. Weitere Informationen finden Sie hier .
Arrays und ArrayList
s dienen unterschiedlichen, wenn auch manchmal überlappenden Zwecken.
Aber abgesehen davon besteht die einfache Tatsache darin, dass Sie nicht in einem Vakuum kodieren, und deshalb werden Sie APIs verwenden, die Arrays beinhalten, sodass das Erlernen von ihnen nicht optional ist. Arrays sind eine absolut grundlegende Struktur in der Informatik.
Es gibt viele Dinge, die Sie mit Arrays tun können, die Sie mit ArrayList
s nicht ausführen können. Zum Beispiel
byte[]
oder char[]
float[]
s oder double[]
s Sie können andere nicht-primitive Array-Abstraktionen anstelle von ArrayList
verwenden, aber manchmal ist die beste Möglichkeit, einen zusammenhängenden Speicherbereich in numerische Einheiten zu unterteilen, ein Array.
Es ist sehr wichtig, eine gute Grundlage in den Programmgrundlagen zu haben. Diese Grundlagen umfassen Dinge wie Variablentypen, Funktionen, Argumente, Arrays und so weiter. Ohne eine richtige Grundlage kann alles, was Sie sonst noch lernen, zusammenbrechen, da Sie keine richtige Grundlage haben. Mit anderen Worten, sagen wir, Sie möchten eine Sprache lernen, könnten Sie beginnen, ganze Sätze durch Auswendiglernen zu lernen, aber es ist schön, einige Wörter von der Zunge rollen zu lassen und zu beginnen, zu verdauen und zu setzen, wie Sie Sätze aus Worten machen können statt Brute zwingt es und merkt sich alle Sätze, die du brauchst.
Es ist wichtig für Sie, Arrays zu lernen, wenn Sie besser verstehen wollen, was "hinter den Kulissen" passiert, oder wenn Sie eine niedrigere Programmiersprache wie C oder Assembler lernen wollen.
Darf ich fragen, wo Sie Java lernen? Ist das für Schule / Hochschule? Wenn ja, versuchen Sie bitte, etwas mit der Arbeit mit Arrays zu tun, weil sie in Kursen wie Datenstrukturen verwendet werden und insbesondere dann, wenn Sie eine Sprache verwenden, die kein ArrayList-Äquivalent hat.
Lerne alles darüber. Zu verstehen, was passiert, ist lohnend.
Tags und Links java arrays data-structures