Tutorials  /  Linux Basics

Datentypen konvertieren in Ruby: Eine Schritt-für-Schritt-Anleitung

Ccentron Redaktion · Januar 2025 ·4 Min. Lesezeit ·Linux Basics, Tutorial

Einleitung

Jedes von Ihnen erstellte Programm wird mehrere Datentypen enthalten. Es ist jedoch wichtig zu bedenken, dass Sie im Allgemeinen Operationen innerhalb desselben Datentyps ausführen. Das bedeutet, dass Sie mathematische Operationen auf Zahlen durchführen oder Zeichenketten zusammenfügen.

Manchmal stammen Daten aus externen Quellen, wie der Tastatur, einer API-Antwort oder einer Datenbank, und Sie müssen sie konvertieren, um damit arbeiten zu können. Ruby bietet mehrere Methoden, um Werte von einem Datentyp in einen anderen zu konvertieren. In diesem Tutorial konvertieren Sie Zeichenketten in Zahlen, Objekte in Zeichenketten, Zeichenketten in Arrays und konvertieren zwischen Zeichenketten und Symbolen.

VM

Passende Infrastruktur bei centron

Zum Ausprobieren braucht es keine eigene Hardware: ccloud³ VMs mit vollem Root-Zugriff gibt es ab 3,12 € im Monat, stundengenau abgerechnet und in Sekunden bereit. Cloud Server mieten →

Datentypen konvertieren: Zeichenketten in Zahlen

Ruby bietet die Methoden to_i und to_f, um Zeichenketten in Zahlen zu konvertieren. to_i konvertiert eine Zeichenkette in eine Ganzzahl, und to_f konvertiert eine Zeichenkette in eine Fließkommazahl.

Code
"5".to_i       # 5
"55.5".to_i    # 55
"55.5".to_f    # 55.5

Um dies zu demonstrieren, erstellen Sie ein kleines Programm, das nach zwei Zahlen fragt und die Summe anzeigt. Erstellen Sie ein neues Ruby-Programm namens adder.rb mit folgendem Code:

Code
adder.rb
print "Was ist die erste Zahl? "
first_number = gets.chop

print "Was ist die zweite Zahl? "
second_number = gets.chop

sum = first_number + second_number

print sum

Wenn Sie das Programm ausführen, erhalten Sie möglicherweise eine unerwartete Antwort:

Code
ruby adder.rb
Ausgabe
Was ist die erste Zahl? 5
Was ist die zweite Zahl? 5
55

Das Programm sagt, dass die Summe von 5 und 5 gleich 55 ist. Sie wissen, dass das nicht stimmt, aber der Computer hat technisch gesehen recht. Das Programm hat nach zwei Zahlen gefragt, aber Sie haben sie über die Tastatur eingegeben. Sie haben nicht die Zahl 5 gesendet, sondern das Zeichen "5". Mit anderen Worten: Ihr Programm hat beide Eingaben als Zeichenketten betrachtet, und wenn Sie die Zeichenketten "5" und "5" zusammenfügen, erhalten Sie die neue Zeichenkette "55".

Um dies zu vermeiden, konvertieren Sie beide Zeichenketten in Zahlen. Ändern Sie Ihr Programm so, dass es beide Zahlen mit der Methode to_f in Fließkommazahlen umwandelt:

Code
adder.rb
print "Was ist die erste Zahl? "
first_number = gets.chop

print "Was ist die zweite Zahl? "
second_number = gets.chop

# Zeichenketten in Zahlen umwandeln
first_number = first_number.to_f
second_number = second_number.to_f

sum = first_number + second_number

print sum

Führen Sie das Programm erneut aus:

Code
ruby adder.rb
Ausgabe
Was ist die erste Zahl? 5
Was ist die zweite Zahl? 5
10.0

Wenn Sie erneut 5 und 5 eingeben, erhalten Sie 10.0.

Besonderes Verhalten von to_i und to_f

Die Methoden to_i und to_f weisen einige interessante Verhaltensweisen auf, wenn die Zeichenketten nicht numerisch sind. Zum Beispiel:

Code
"123-abc".to_i
Ausgabe
123

In diesem Beispiel ergibt die Konvertierung der Zeichenkette "123-abc" in eine Ganzzahl die Ganzzahl 123. Die Methode to_i stoppt, sobald sie auf das erste nicht-numerische Zeichen stößt.

Datentypen konvertieren: Daten in Zeichenketten

Ruby bietet die Methode to_s, um jeden anderen Typ in eine Zeichenkette zu konvertieren:

Code
25.to_s                    # "25"
(25.5).to_s                # "25.5"
["Sammy", "Shark"].to_s    # "[\"Sammy\", \"Shark\"]"

Oft konvertieren Sie Daten in Zeichenketten, um Programmausgaben zu erstellen.

Datentypen konvertieren: Zeichenketten in Arrays

Wenn Sie eine Zeichenkette haben, können Sie sie mit der Methode split in ein Array umwandeln:

Code
"eins zwei drei".split
Ausgabe
["eins", "zwei", "drei"]

Konvertieren zwischen Zeichenketten und Symbolen

Um ein Symbol in eine Zeichenkette umzuwandeln, verwenden Sie die Methode to_s:

Code
:language.to_s
Ausgabe
"language"

Um eine Zeichenkette in ein Symbol zu konvertieren, verwenden Sie die Methode to_sym:

Code
"first_name".to_sym
Ausgabe
:first_name

Fazit

In diesem Tutorial haben wir demonstriert, wie man mehrere der wichtigsten nativen Datentypen mithilfe integrierter Methoden in andere Datentypen konvertiert. Sie können jetzt Zahlen in Zeichenketten, Zeichenketten in Arrays und zwischen Symbolen und Zeichenketten konvertieren.

Jetzt 200 € Guthaben sichern

Testen Sie Ihr Setup auf ccloud³

Registrieren Sie sich in der ccloud³ und erhalten Sie 200 € Startguthaben für Ihr Projekt – z. B. für eine PostgreSQL-VM mit automatischen Backups.

centron Redaktion Technische Redaktion

Das Redaktionsteam von centron schreibt Anleitungen aus dem Betriebsalltag: getestet auf unserer eigenen Plattform, betrieben im Rechenzentrum in Hallstadt bei Bamberg.

Kategorie Linux Basics
Teilen
Noch offene Fragen?

Unser Team hilft Ihnen bei Ihrem konkreten Setup weiter – von Menschen, die die Plattform selbst betreiben.

War dieses Tutorial hilfreich?

Ihre Antwort wird anonym gespeichert und hilft uns, die Tutorials zu verbessern.

Kommentare

Noch keine Kommentare – stellen Sie die erste Frage zu diesem Tutorial.

Zum Kommentieren anmelden

Kommentare stehen centron-Kunden offen. Melden Sie sich in Ihrem Konto an, um eine Frage zu diesem Tutorial zu stellen.

Weiterlesen

Das könnte Sie auch interessieren

Jetzt kostenlos anfangen

Melden Sie sich an und erhalten Sie in den ersten 60 Tagen ein Guthaben von 200 € bei centron.

Dieses Werbeangebot gilt nur für neue Konten. Angebot ausschließlich für Gewerbetreibende.

Jetzt loslegen Sales kontaktieren