In einem Array werden verschiedene Daten zu einer Gruppe zusammengefasst. Im Gegensatz zu vielen anderen Programmiersprachen schreibt Ruby den Typ des Arrays nicht vor (Duck Typing), sondern erlaubt alle Klassen in ihm. Jedes Array beginnt am Index 0 und ist von da an aufsteigend, irritierend vielleicht dann, wenn man mithilfe von z.B. Array#length das letzte Element eines Arrays abrufen möchte, da dieses mit 1 zu zählen anfängt; eine Länge von 0 würde ein leeres Array bedeuten. Anders als Hashes sind Arrays in jedem Fall sortiert.
ErstellungEin Array kann auf verschiedene Weise erstellt werden:
Abrufen von ElementenEin Element kann am einfachsten mithilfe der Methode Array#[] ausgelesen werden. Diese akzeptiert sowohl eine einzelne Zahl als Index, einen Bereich in Form eines Ranges oder Start-End-Angaben oder auch einen negativen Index, der als von hinten zählend gewertet wird.
Daneben gibt es noch die Methode Array#slice!, die das angegebene Element wortwörtlich aus dem Array »herausholt«:
Automatische Verwendung von ArraysAn einigen Stellen werden Arrays auch mehr oder minder auffällig benutzt, zum Beispiel bei der gleichzeitigen Zuweisung mehrerer Variablen:
Wenn eine Methode mit einer variablen Argumentanzahl definiert werden soll, werden die Argumente als Array zurückgegeben.
SplatMan kann ein Array für bestimmte Zwecke mithilfe des Splat-Operators * in seine Einzelteile aufspalten.
MathematischArrays sind für Berechnungen an mathematischen Mengen nicht unbedingt geeignet; dafür sollte man eher die Klasse Set verwenden, die auch alle notwendigen Eigenschaften wie zum Beispiel die Einmaligkeit der Zahlen garantiert. Zwar kann man auch mit Arrays rechnen, aber die Ergebnisse können unerwartet sein:
Änderungen an ArrayHier werden die Änderungen an der Klasse Array gelistet, sobald ein Feature Freeze für Ruby 1.9.1 stattgefunden hat. Siehe auch |
|||||||||||||||||||||||||||