Types de données Ruby
Dans ce chapitre, nous allons présenter les types de données de base de Ruby.
Les types de données pris en charge par Ruby incluent les types de base Number, String, Ranges, Symbols, ainsi que les valeurs spéciales true, false et nil, et deux structures de données importantes - Array et Hash.
Types numériques (Number)
1. Entier
Il existe deux types d'entiers. S'il est compris dans 31 bits (quatre octets), il s'agit d'une instance de Fixnum. S'il dépasse cette limite, il s'agit d'une instance de Bignum.
La plage d'entiers va de -230à 230-1, et les entiers de cette plage sont des objets de classeFixnum. Lorsque la valeur entière est supérieure ou égale à 2 à la puissance 30 ( -262à 262-1), il sera automatiquement converti en type Bignum.
Vous pouvez utiliser un signe initial facultatif avant l'entier, un indicateur de base facultatif (0 pour octal, 0x pour hexadécimal, 0b pour binaire), suivi d'une série de chiffres. Les caractères de soulignement sont ignorés dans la chaîne numérique.
Vous pouvez obtenir la valeur entière d'un caractère ASCII ou d'une séquence d'échappement indiquée par un point d'interrogation.
Exemple
Type à virgule flottante
Ruby prend en charge les nombres à virgule flottante. Ce sont des nombres avec des fractions décimales. Les nombres à virgule flottante sont des objets de la classeFloat, et peuvent être l'un des suivants.
Exemple
Exemple
Opérations arithmétiques
Opérateurs d'addition, de soustraction, de multiplication et de division : + - * / ; l'opérateur d'exponentiation est **
L'exposant n'a pas besoin d'être un entier, par exemple
Exemple
Type chaîne de caractères
Une chaîne Ruby est simplement une séquence d'octets de 8 bits, et ce sont des objets de la classe String.
Les chaînes délimitées par des guillemets doubles autorisent la substitution et l'utilisation de notations avec barre oblique inverse ; les chaînes délimitées par des guillemets simples n'autorisent pas la substitution et n'autorisent que deux notations avec barre oblique inverse : \\ et \'.
Cela produira le résultat suivant :
escape using "\" That's right
Vous pouvez utiliser la séquence#{ expr }pour substituer la valeur de toute expression Ruby dans une chaîne. Ici, expr peut être n'importe quelle expression Ruby.
Exemple
Cela produira le résultat suivant :
相乘 : 86400
Exemple
Le résultat de sortie est:
Ruby Ruby,ok
Notations de barre oblique inversée
Le tableau suivant répertorie les notations de barre oblique inversée prises en charge par Ruby :
| Notations | Caractère représenté |
|---|---|
| \n | Nouvelle ligne (0x0a) |
| \r | Retour chariot (0x0d) |
| \f | Saut de page (0x0c) |
| \b | Retour arrière (0x08) |
| \a | Sonnerie (0x07) |
| \e | Échappement (0x1b) |
| \s | Espace (0x20) |
| \nnn | Notation octale (n est 0-7) |
| \xnn | Notation hexadécimale (n est 0-9, a-f ou A-F) |
| \cx, \C-x | Contrôle-x |
| \M-x | Méta-x (c | 0x80) |
| \M-\C-x | Méta-Contrôle-x |
| \x | Caractère x |
Pour plus de détails sur les chaînes Ruby, veuillez consulterChaîne Ruby。
Tableaux
Les littéraux de tableau sont définis par des valeurs séparées par des virgules à l'intérieur de [], et prennent également en charge les définitions de plages.
- (1) Les tableaux sont accessibles par index via []
- (2) Insérer, supprimer et remplacer des éléments par des opérations d'affectation
- (3) Utilisez + et - pour fusionner et supprimer des éléments, et la collection est renvoyée en tant que nouvelle collection.
- (4) Le signe << ajoute des éléments aux données d'origine.
- (5) Le signe * répète les éléments du tableau.
- (6) Les symboles | et & sont utilisés pour les opérations d'union et d'intersection (faites attention à l'ordre).
Exemple
Essayez-le »
Cela produira le résultat suivant :
fred 10 3.14 This is a string last element
Pour plus de détails sur les tableaux Ruby, veuillez consulterTableau Ruby。
Type Hash
Un hash Ruby est une série de paires clé/valeur placées entre accolades, avec les clés et les valeurs séparées par des virgules et la séquence =>. Les virgules finales sont ignorées.
Exemple
Exemple
Essayez-le »
Cela produira le résultat suivant :
red is 3840 green is 240 blue is 15
Pour plus de détails sur les tables de hachage Ruby, veuillez consulterRuby Hash。
Type Range
Une plage représente un intervalle.
Une plage est représentée en définissant une valeur de début et une valeur de fin. Les plages peuvent être construites à l'aide de s..e et s...e, ou via Range.new.Une plage construite avec .. va de la valeur de début à la valeur de fin (inclusivement). Une plage construite avec ... va de la valeur de début à la valeur de fin (exclusivement). Lorsqu'elle est utilisée comme itérateur, la plage renvoie chaque valeur de la séquence.
La plage (1..5) signifie qu'elle contient les valeurs 1, 2, 3, 4, 5, et la plage (1...5) signifie qu'elle contient les valeurs 1, 2, 3, 4.
Cela produira le résultat suivant :
10 11 12 13 14 15
Pour plus de détails sur les plages Ruby, veuillez consulterRuby Range。
Autres extensions