dynamische Listen in Java

Momchilo

Komplett-PC-Aufrüster(in)
Hallo,
kann mir jemand helfen und sagen wie solche Datentypen auf dem Heap und Stack verteilt/strukturiert werden?
In welchen Bereichen werden denn dynamische Lsiten gebraucht, die in Java geschrieben wurden? Im Internet läuft doch quasi alles mit SQL.

Schon einmal vielen Dank für eure Antworten
 

bingo88

PCGH-Community-Veteran(in)
Du kannst dir im JDK die Klassenquellen ansehen, da wird gezeigt wie das funktioniert.

Paar Beispiele geb ich dir trotzdem:
ArrayList:
Im Grunde versteckt sich hinter dieser Klasse ein gewöhnliches Array, welches bei Bedarf vergrößert wird (größeres erzeugen und umkopieren; altes löschen).
Einen Stack kann man auch so implementieren.

Dann gibt es noch (doppelt) verkettete Listen. Dabei zeigt jedes Element jeweils auf seinen Nachfolger (bzw. Vorgänger im Fall der doppelten). Kann man sie wie aneinanderhängende Blöcke vorstellen.

Du brauchst diese Listen sehr oft. Zum Beispiel bei unbekannten Arraygrößen, also wenn du die Länge erst zur Laufzeit des Programms kennst. Das hat mit SQL auch erstmal garnichts zu tun, SQL soll ja Daten in eine Datenbank ablegen, also dauerhaft speichern. Die Listen speichern den Kram ja nur lokal im RAM.
Ein Beispiel wäre die Adresszeile im Browser. Der Webserver kann ja unmöglich vorher wissen, wie viele Argumente der Benutzer/die Webseite anhängt. Da braucht man dann dyn. Listen für.
Anderes Beispiel: Du möchest Zeilen aus einer SQL-Tabelle in einem Objekt speichern. Das kann man mit einer dynamischen Liste mit entsprechendem Klassentemplate machen. Hier könnte man allerdings auch vorher ein SELECT COUNT(*) FROM blubb machen und mit dieser Angabe ein Array erzeugen, aber naja. Schön wäre das net :ugly:

Ich hoffe, ich konnte dir helfen.
 

k-b

Software-Overclocker(in)
In welchen Bereichen werden denn dynamische Lsiten gebraucht, die in Java geschrieben wurden? Im Internet läuft doch quasi alles mit SQL.

Ja - aber was macht der SQL-Server? Der wird vielleicht dynamische Listen brauchen. Genauso wird es vielleicht der Web-Server der die Dateien ausliefert.
Dynamische Listen kannst in allen Anwendungen brauchen..
 
Oben Unten