Mein Möbelplaner

Mein Ziel ist es mit der Grundidee des digitalen Raumplaners und den Grundideen unseres BlueJ Programmes ein eigenes Programm zu entwickeln. Dazu möchte ich einige der folgenden Funktionen umsetzen:

  • Möbel als Skizzen: drehbar, verschiebbar, anpassbare Größe
  • Drag and Drop Menüleiste
  • durch Mausbewegung verschiebbare Möbel
  • Wahl im Drag and Drop Menü erscheinen den Möbel über eine Liste

Array, ArrayList und LinkedList

Array:

Ein Array ist ein Container mit einer festen Größe. In diesem können verschiedene Objekte des selben Typs gespeichert werden. Der Array gibt einem die Möglichkeit die Objekte im Array zu verwalten und zu bearbeiten und einzeln auf diese zuzugreifen.

ArrayList:

Die ArrayList ist eine Erweiterung des Arrays. Sie dient ebenso zur Datenspeicherung und Datenverwaltung wie das Array. Jedoch besitzt die ArrayList keine statische Datenstruktur wie ein Array, sondern lässt sich erweitern. Diese dynamische Struktur ermöglicht es, dass die Anzahl der zu speichernden Objekte nicht bekannt sein muss.

Sowohl bei Arrays als auch bei ArrayLists kann auf die Objekte durch ihren Platz innerhalb der ArrayList/ des Arrays zugegriffen werden. Hat man beispielsweise einen Array mit fünf Einträgen, so sind diese nummeriert und man kann sich diese anhand der „Nummerierung“ ausgeben lassen. Möchte man sich alle Objekte eines Arrays/ einer ArrayList  ausgeben lassen, so kann man über die Einträge iterieren und sich somit die Einträge über das erhöhen des Index (Nummerierung) ausgeben lassen.

Array oder ArrayList – Was eignet sich wann?

Somit kommt die Frage auf, wieso man ein Array nutzen sollte, wenn es die „schlechtere“ Version der ArrayList ist. Dynamische Datenstrukturen besitzen den Nachteil, dass das erweitern dieser einer höheren Rechenleistung bedarf. Bei zu vielen Objekten innerhalb der ArrayList wäre somit die Leistungsfähigkeit des Programmes eingeschränkt. Deswegen wird in der Programmierung darauf geachtet, dass Objekte nur gerade so viele Funktionen besitzen, dass sie ihren Zweck erfüllen.

LinkedList:

Während in einer ArrayList die Objekte in einer festgelegten Reihenfolge gespeichert werden und somit beim Abrufen über die Liste iteriert werden kann, haben die Einträge einer LinkedList keine festgelegte Reihenfolge. In einem Eintrag einer LinkedList sind zwei Informationen gespeichert. Die erste ist die tatsächlich zu speichernde Information. Die zweite gibt an, wo der nächste Eintrag der LinkedList zu finden ist. Es ist deswegen im Vergleich zur ArrayList aufwendiger auf bestimmte Einträge zuzugreifen. Dies macht es jedoch ebenfalls einfacher Einträge hinzuzufügen und zu löschen, da nur die „Verlinkung“ zwischen den Einträgen geändert werden muss.

Erstelle eine Website wie diese mit WordPress.com
Jetzt starten