Zurück zum Blog

Ein Überblick über Datentypen in Ruby

Ein Überblick über Datentypen in Ruby

Ruby ist eine bekannte Programmiersprache. Sie zielt darauf ab, Einfachheit und Produktivität zu verbessern. Sie ist außerdem eine vollständig objektorientierte Programmiersprache. Darüber hinaus bietet Ruby eine elegante Syntax, die natürlich zu lesen und einfach zu schreiben ist.

Jede Programmierung erfordert die Verwaltung verschiedener Datentypen. Ein Datentyp beschreibt eine bestimmte Klasse von Daten. Er teilt der Maschine mit, wie sie die Daten im Programm behandeln soll. Datentypen sind entscheidend dafür, was mit den Daten getan werden kann (einschließlich der Operationen, die ausgeführt werden können). In diesem Tutorial werden wir tiefer in die in Ruby verfügbaren Datentypen eintauchen. Wir werden auch die dynamische Typisierung untersuchen. Mit dieser Funktion kann Ruby den Datentyp einer Variablen automatisch bestimmen, ohne ihn explizit deklarieren zu müssen. Fangen wir an!

Voraussetzungen

Um die in dieser Anleitung gezeigten Schritte zu üben und zu implementieren, benötigen Sie die folgenden Komponenten:

Datentypen in Ruby

Ruby bietet alle gängigen Datentypen, die Ihnen in jeder Programmiersprache begegnen: Integer, Floats, Strings, Arrays, Symbole, Hashes usw. Als Nächstes geben wir einen Überblick darüber, wie man mit den verschiedenen Datentypen von Ruby arbeitet.

Schritt 1 – Ganzzahlen

Ähnlich wie in der Mathematik sind Ganzzahlen in der Computerprogrammierung ganze Zahlen. Der Wert kann positiv, negativ oder 0 sein. Der Wertebereich ist wie folgt:

Zeit, Ganzzahlen in Ruby auszuprobieren. Das erste Beispiel gibt eine einfache Ganzzahl auf dem Bildschirm aus:

Data Types in Ruby 1

Als Nächstes werden wir mit einer Ganzzahl-Variable arbeiten. Hier enthält die Variable sample_int einen Ganzzahlwert (99) und die print-Funktion gibt den Variablenwert auf dem Bildschirm aus:

Data Types in Ruby 2

Wir können auch mathematische Operationen mit Ganzzahlen durchführen. Das folgende Beispiel zeigt eine einfache Summation von zwei Ganzzahlen:

Wenn wir’re mit großen Zahlen arbeiten, verwenden wir oft Kommas (,), um das Lesen zu erleichtern. Beispielsweise wird eine Million (1000000) zur besseren Lesbarkeit als 1,000,000 geschrieben. Während die Verwendung von Kommas verboten ist, erlaubt Ruby die Verwendung von Unterstrichen ( _) als Trennzeichen. Werfen Sie einen Blick auf das folgende Beispiel:

Data Types in Ruby 3

Die Verwendung von Unterstrichen verbessert die Lesbarkeit des Codes, insbesondere bei der Arbeit mit großen Ganzzahlwerten.

Schritt 2 – Gleitkommazahlen

Eine Gleitkommazahl (oder kurz Float) stellt eine reelle Zahl dar. Ähnlich wie in der mathematischen Definition können reelle Zahlen rational oder irrational sein. In Ruby ist ein Float im Grunde eine Zahl, die einen Dezimalpunkt enthält.

Versuchen wir, einen Float-Wert auf dem Bildschirm auszugeben:

Das nächste Beispiel zeigt die Deklaration einer Float-Variable:

Wir können auch verschiedene mathematische Operationen mit den Float-Werten und -Variablen durchführen. Das folgende Beispiel zeigt eine einfache Summation von zwei Float-Zahlen:

Was passiert, wenn wir einen Float und ein Integer addieren? Der resultierende Wert ist ein Float. Im folgenden Beispiel wird 55.0, obwohl es eine ganze Zahl ist, als Float behandelt:

Schritt 3 – Boolean

Boolesche Werte repräsentieren die Wahrheitswerte des Teilbereichs Logik in der Mathematik. In Ruby werden boolesche Datentypen durch zwei Werte dargestellt: true und false:

  • Größer als

    • 100 > 99: true

    • 99 > 100: false

  • Kleiner als

    • 500 < 999: true

    • 999 < 500: false

  • Gleich

    • 10 == 10: true

    • 9 == 99: false

Ähnlich wie Zahlen können wir auch ein true oder false Wert in einer Variablen. Das folgende Beispiel demonstriert diese Funktion:

Step 4 – Strings

In der Programmierung wird ein String als eine Sequenz von Zeichen (Buchstaben, Zahlen und Symbolen) dargestellt. In Ruby existieren Strings innerhalb von einfachen Anführungszeichen ( ') oder doppelten Anführungszeichen ( "). Wir haben bereits die Verwendung von Strings in Ruby im Detail behandelt, daher wird dies ein kurzer Abschnitt sein.

Das folgende Beispiel ist ein einfaches hello world-Programm in Ruby:

Wir können Strings auch in Variablen speichern. Das folgende Beispiel beinhaltet auch eine String-Verkettung:

Data Types in Ruby 4

Step 5 – Arrays

Ein Array ist eine Datenstruktur, die eine Sammlung von Elementen desselben Datentyps mit fester Größe speichern kann. Es kann auch als eine Sammlung von Variablen desselben Datentyps konzipiert werden. Es ist eine der grundlegendsten Datenstrukturen in den meisten modernen Programmiersprachen.

In Ruby wird ein Array wie folgt definiert:

Es ist möglich, ein Array aus allen anderen Datentypen zu erstellen, die wir bisher besprochen haben (Integer, Float und Strings). Hier sind einige Beispiele:

  • Integer: [-5, 0, 5]

  • Float: [-9.99, -6.99, -3.99, 0, 3.99]

  • String: [“the”, “quick”, “brown”, “fox”]

Das folgende Beispiel implementiert all diese Arten von Arrays:

Data Types in Ruby 5

Beachten Sie, dass die print-Funktion, wenn sie auf ein Array stößt, das gesamte Array auf dem Bildschirm ausgibt. Aus Gründen der Bequemlichkeit werden Sie Arrays oft als Variablen vorfinden. Lassen Sie uns den Code aktualisieren:

Data Types in Ruby 6

Data Types in Ruby 7

Jetzt können wir mit einzelnen Elementen der Arrays arbeiten:

Data Types in Ruby 7

Beachten Sie, dass in Ruby der Indexwert von Arrays bei 0 beginnt.

Aus Gründen der Bequemlichkeit verfügen Arrays in Ruby über die .first- und die .last-Methoden, die das erste und das letzte Element ausgeben:

Data Types in Ruby 8

In Ruby haben Arrays eine weitere interessante Eigenschaft. Sie können verschiedene Datentypen gleichzeitig enthalten. Sie können beispielsweise Strings, Symbole und sogar andere Arrays speichern:

Data Types in Ruby 9

Schritt 6 – Symbole

In Ruby ist ein Symbol ein spezieller Datentyp, der wie ein Label oder ein Identifikator wirkt. Symbole sind unveränderlich, was bedeutet, dass sie nicht geändert werden können. Symbole erscheinen so, als würde man Variablen ohne Wert deklarieren.

Hier’s ein Beispiel für ein Symbol:

Im Allgemeinen werden Symbole verwendet, um etwas Wichtiges zu identifizieren. Für andere Situationen sind Strings jedoch völlig ausreichend.

Da Ruby eine objektorientierte Sprache ist, behandelt sie alles als Objekt (einschließlich Strings) mit einer eindeutigen Speicheradresse, selbst wenn die Strings identisch sind. Wenn Sie jedoch auf ein Symbol verweisen, handelt es sich überall im Programm um dasselbe Objekt, also um dieselbe Speicheradresse.

Schritt 7 – Hashes

Ein Hash ist eine wörterbuchähnliche Sammlung von Schlüsseln und Werten. Oft werden Hashes verwendet, um zusammenhängende Daten zu speichern, beispielsweise Informationen über einen Benutzer.

Hier’s ein kurzes Beispiel für einen Hash. Wir haben einen Hash erstellt user_info , der den Benutzernamen und das Passwort eines Benutzers enthält:

Data Types in Ruby hashing in ruby

Um die Werte eines Schlüssel-Wert-Paares abzurufen, müssen wir den Schlüssel verwenden. Das folgende Beispiel demonstriert diesen Prozess:

Data Types in Ruby retrieve value using key

Ruby ermöglicht es auch, einen Hash mit einer etwas anderen Syntax zu definieren ( : anstelle von =>):

Data Types in Ruby retrieving value using key

Diese Syntaxstruktur ähnelt der Syntax, die in anderen Sprachen verwendet wird, zum Beispiel JavaScript. In dieser Syntaxstruktur sind die Schlüssel als Symbole definiert. Deshalb verwenden wir anstelle von "username" Folgendes: username , um auf den Wert zuzugreifen.

Dynamische Typisierung

Sie haben vielleicht schon bemerkt, dass wir bei der Deklaration einer Variable keinen Datentyp explizit zuweisen müssen. Stattdessen bestimmt der Wert der Variable den Datentyp. Ruby verwendet dynamische Typisierung , bei der die Typprüfung zur Laufzeit durchgeführt wird. Im Gegensatz dazu werden die Datentypen bei statischer Typisierung in Programmiersprachen (wie z. B. C/C++) während der Kompilierung bestimmt.

In dem folgenden Beispiel sind alle der Variable dyn_var zugewiesenen Werte gültig:

In dynamisch typisierten Sprachen steht es uns frei, eine vorhandene Variable wiederzuverwenden, um verschiedene Datentypen zu speichern. Hier wird das vorherige Beispiel aktualisiert, um dieses Phänomen zu demonstrieren:

dynamically typed variables

Wie dieses Beispiel zeigt, ändert sich jedes Mal, wenn ein neuer Wert zugewiesen wird, der Datentyp von dyn_var im laufenden Betrieb. Dies ist nützlich, wenn ein Datentyp in einen anderen konvertiert wird. Das folgende Beispiel demonstriert dies:

get input and cast

Hier,

  • Da Tastatureingaben Strings sind, ist length zunächst ein String.

  • Da unser gewünschter Wert ein Float ist, konvertieren wir den String-Wert in einen Float unter Verwendung der to_f-Methode.

  • Aufgrund der Wertänderung wird length der Datentyp Float zugewiesen. Das ist es, was wir sehen, wenn wir seinen Wert auf dem Bildschirm ausgeben.

Was würde passieren, wenn wir versuchen würden, zwei verschiedene Datentypen miteinander zu mischen? Ruby wird einen Fehler ausgeben. Sehen Sie selbst:

mixing two datatypes

Datentyp-Identifikation

In Ruby wird alles als Objekt behandelt. Jedes Objekt in Ruby verfügt über die Methode class. Wenn sie aufgerufen wird, gibt diese Methode an, um welchen Datentyp es sich bei der Quelle handelt. Hier sind einige Beispiele für die Verwendung der class-Methode:

get classes name

Eine andere Möglichkeit, den Datentyp zu bestimmen, ist die Verwendung der kind_of?-Methode. Sie vergleicht den Datentyp des Objekts mit dem abgefragten Datentyp und gibt einen booleschen Wert zurück. Sehen Sie sich das im folgenden Beispiel an:

check datatype

Ebenso gibt es eine weitere Methode is_a?, die den Datentyp vergleicht und einen booleschen Wert zurückgibt. Der einzige Unterschied ist die Bezeichnung der Methode. Sie ist jedoch möglicherweise vorzuziehen, da sie für Entwickler etwas einfacher zu lesen und zu verstehen ist. Aktualisieren Sie das vorherige Beispiel mit is_a?:

check datatype

Fazit

Die Arbeit mit jeder Programmiersprache erfordert ein gutes Verständnis der von ihr unterstützten Datentypen. In diesem Leitfaden haben wir die gängigsten Datentypen untersucht, die in der Ruby-Programmierung verwendet werden. Wir haben Integers, Floats, Strings, Symbols, Booleans und Hashes besprochen und demonstriert (mit Beispielen).

Werfen Sie einen Blick auf weitere Tutorials aus unserem Blog, die Ihnen helfen, Ruby zu entdecken:

Viel Spaß beim Programmieren!

author

Preslav Dobrev

Autor · CloudSigma

Preslav Dobrev ist ein kreativer Designer bei CloudSigma und konzentriert sich auf eine konsistente Unternehmensidentität durch traditionelle und innovative Marketingkanäle. Er versteht es meisterhaft, künstlerische Vision mit strategischem Marketing zu verbinden, um wirkungsvolle Markengeschichten zu schaffen.

Kommentare

Noch keine Kommentare. Schreiben Sie den ersten.