Das Speichern von Variablen innerhalb von Variablen ist eine häufige Sache in Rubin und wird oft als "bezeichnetDatenstruktur"Es gibt viele Arten von Datenstrukturen, von denen die einfachste das Array ist.
Programme müssen häufig Sammlungen von Variablen verwalten. Beispielsweise muss ein Programm, das Ihren Kalender verwaltet, eine Liste der Wochentage enthalten. Jeder Tag muss in einer Variablen gespeichert werden, und eine Liste von ihnen kann zusammen in einer Array-Variablen gespeichert werden. Über diese eine Array-Variable können Sie auf jeden Tag zugreifen.
Leere Arrays erstellen
Sie können ein leeres Array erstellen, indem Sie ein neues Array-Objekt erstellen und in einer Variablen speichern. Dieses Array ist leer. Sie müssen es mit anderen Variablen füllen, um es zu verwenden. Dies ist eine gängige Methode zum Erstellen von Variablen, wenn Sie eine Liste von Dingen über die Tastatur oder aus einer Datei lesen.
Im folgenden Beispielprogramm wird mit dem Befehl array und dem Zuweisungsoperator ein leeres Array erstellt. Drei Zeichenfolgen (geordnete Zeichenfolgen) werden von der Tastatur gelesen und am Ende des Arrays "gedrückt" oder hinzugefügt.
#! / usr / bin / env ruby
array = Array.new
3. mal tun
str = gets.chomp
array.push str
Ende
Verwenden Sie ein Array-Literal, um bekannte Informationen zu speichern
Eine andere Verwendung von Arrays besteht darin, eine Liste von Dingen zu speichern, die Sie bereits beim Schreiben des Programms kennen, z. B. die Wochentage. Um die Wochentage in einem Array zu speichern, können Sie ein leeres Array erstellen und wie im vorherigen Beispiel einzeln an das Array anhängen. Es gibt jedoch einen einfacheren Weg. Sie können eine verwenden Array-Literal.
Bei der Programmierung ist ein "Literal" eine Art von Variable, die in die Sprache selbst integriert ist und über eine spezielle Syntax verfügt, um sie zu erstellen. Beispielsweise, 3 ist ein numerisches Literal und "Rubin" ist ein String-Literal. Ein Array-Literal ist eine Liste von Variablen, die in eckigen Klammern eingeschlossen und durch Kommas getrennt sind [ 1, 2, 3 ]. Beachten Sie, dass jeder Variablentyp in einem Array gespeichert werden kann, einschließlich Variablen unterschiedlichen Typs im selben Array.
Das folgende Beispielprogramm erstellt ein Array mit den Wochentagen und druckt diese aus. Ein Array-Literal wird verwendet, und das jeder Schleife wird verwendet, um sie zu drucken. Beachten Sie, dass jeder ist nicht in die Ruby-Sprache integriert, sondern eine Funktion der Array-Variablen.
#! / usr / bin / env ruby
Tage = ["Montag",
"Dienstag",
"Mittwoch",
"Donnerstag",
"Freitag",
"Samstag",
"Sonntag"
]
Tage.jeder tun | d |
setzt d
Ende
Verwenden Sie den Indexoperator, um auf einzelne Variablen zuzugreifen
Über das einfache Durchlaufen eines Arrays hinaus - indem Sie jede einzelne Variable der Reihe nach untersuchen - können Sie mit dem Indexoperator auch von einem Array aus auf einzelne Variablen zugreifen. Der Indexoperator nimmt eine Zahl und ruft eine Variable aus dem Array ab, deren Position im Array mit dieser Zahl übereinstimmt. Indexnummern beginnen bei Null, daher hat die erste Variable in einem Array einen Index von Null.
So können Sie beispielsweise die erste Variable aus einem Array abrufen, das Sie verwenden können Array [0]und um die Sekunde abzurufen, die Sie verwenden können Array [1]. Im folgenden Beispiel wird eine Liste von Namen in einem Array gespeichert und mit dem Indexoperator abgerufen und gedruckt. Der Indexoperator kann auch mit dem Zuweisungsoperator kombiniert werden, um den Wert einer Variablen in einem Array zu ändern.
#! / usr / bin / env ruby
names = ["Bob", "Jim",
"Joe", "Susan"]
setzt Namen [0] # Bob
setzt Namen [2] # Joe
# Ändere Jim in Billy
names [1] = "Billy"