Verzeichnis:
Sequentieller generischer ArrayList-Container
HashSet-Sammelcontainer
HashMap
So verwenden Sie Java, um die Funktion des Notizblocks zu implementieren. Listen Sie zunächst die von Notepad benötigten Funktionen auf:
kann Datensätze (Strings) hinzufügen;
kann einen der Datensätze löschen; >
kann die angegebene Anzahl von Datensätzen abrufen; kann alle Datensätze auflisten. Wenn dieser Notizblock Teil eines großen Programms ist, also ein übergeordnetes Programm vorhanden ist, ruft das übergeordnete Programm möglicherweise einige der oben aufgeführten Daten in diesem Notizblock auf. Also rufen wir die oben aufgeführten Funktionen auf der Oberfläche dieses Notizblocks auf. Der Aufruf dieser Schnittstellen erfolgt dann über die öffentliche Funktion (Methode) der Notepad-Klasse. Aber wie gelingt die Aufnahme? Offensichtlich kann die aufgezeichnete Zeichenfolge nicht in einem Array aufgezeichnet werden, da die Länge des Arrays voreingestellt ist. Zu diesem Zeitpunkt wird der generische Container Arraylistverwendet. Diese Arraylist ist auch eine Klasse des Systems, daher muss bei ihrer Verwendung ein neues Objekt definiert werden: private Arraylist
Notes = new Arraylist( ) ; Deklarieren Sie auch import java.util.ArrayList;
Notes
notes.add()
Ausführen:
Darüber hinaus enthält der Containertyp auch einen Sammelcontainer (Set), z. B. HashSet, bei dem es sich ebenfalls um eine Klasse und deren Eigenschaften handelt sind interne Elemente. Es ist nicht sortiert und kann keine doppelten Elemente haben. Es ist das gleiche Konzept wie die Menge in der Mathematik.Sie können den Unterschied zwischen den beiden Containern ArrayList und HashSet anhand der Ergebnisse der Programmausführung erkennen.
Hinweis: Sie können dem Programm auch entnehmen, dass die Ausgabe der beiden Container nicht mehr jedes Element des Containers einem anderen Array zuordnet und dann jedes Element im Array über eine for every-Schleife ausgibt. Hier drucken wir direkt ein Containerobjekt aus, was in Ordnung ist. Dies liegt daran: { Wie im ersten roten Feld gezeigt, können Sie den Objektnamen dieser Klasse direkt drucken, wenn es in einer Klasse eine Funktion „public String toString() {}“ gibt Die Ausgabe erfolgt wie folgt: Die toString-Funktion wird automatisch aufgerufen, wie im zweiten roten Feld gezeigt. Daher vermuten wir, dass es in den beiden öffentlichen Klassenquelldateien ArrayList und HashSet ähnliche Funktionen wie „public String toString () {}“ geben muss. }------------------------------------- --- -------------------------------- --- --HashMap-Container: HashMap