ARRAY |
Tableau |
---|---|
Ruby |
Syntaxe
Array(arg) |
Paramètres
Nom | Description |
---|---|
arg | Ce paramètre permet d'indiquer la dimension du tableau. |
Retour
Valeur | Description |
---|---|
tableau | Ces valeurs permettent d'indiquer le tableau créé. |
Description
Cette fonction permet de convertir un paramètre en un tableau utilisable par «to_a».
Algorithme
MODULE Array(input) SI input est nil ALORS RETOURNE un array [] vide FIN SI SI entrée IS un instance de tableuau ALORS RETOURNE input (c'est déjà un tableau) FIN SI ESSAI SI input RESPONDS TO to_ary ALORS RETOURNE input.to_ary() (convertir en utilisant la méthode to_ary) FIN SI ATTRAPER error (Ignorer les erreurs si to_ary échoue) FIN ESSAI RETOURNE [input] (envelopper l'entrée dans un tableau) |
Remarques
- Création et flexibilité : La fonction Array de Ruby permet de créer des tableaux de manière flexible. En passant un seul paramètre à la fonction, elle convertit ce paramètre en tableau. Par exemple, Array(1) retourne [1]. Si le paramètre est déjà un tableau, il est renvoyé tel quel, ce qui rend la méthode utile pour normaliser les données.
- Conversion d'intervalles : L'un des usages courants de la fonction Array est de transformer des intervalles en tableaux. Par exemple, Array(1..5) retourne [1, 2, 3, 4, 5]. Cela permet de travailler facilement avec des intervalles dans des contextes nécessitant des index ou des accès par position.
- Gestion des nil : Si vous passez nil à la fonction Array, elle retournera un tableau vide : Array(nil) produit []. Cette fonctionnalité est particulièrement utile dans les situations où l'on veut éviter des erreurs en traitant des valeurs potentiellement nulles, en normalisant toujours l'entrée en tableau.
- Compatibilité avec les Enumerable : La fonction peut également être utilisée pour convertir des objets incluant le module Enumerable en tableaux. Par exemple, un hash ou un objet personnalisé qui implémente un itérateur peut être converti en tableau pour itérer plus facilement ou manipuler les données sous forme d'une liste.
- Différence avec Array.new : Contrairement à Array.new, créant un tableau avec un nombre spécifié d'éléments ou initialise chaque élément avec une valeur, Array est davantage une fonction de conversion. Par exemple, Array(3) retourne [3], tandis que Array.new(3) retourne [nil, nil, nil]. Cela reflète leur différence fondamentale d'intention.
- Conversion de String : Si une chaîne de caractères est passée à Array, elle sera traitée comme un objet normal et enveloppée dans un tableau (par exemple, Array("abc") donne ["abc"]). Contrairement à certaines méthodes comme split, Array ne divise pas une chaîne, mais l'inclut telle quelle.
- Utilisation dans les méthodes : La fonction Array est utile dans les méthodes acceptant plusieurs types de paramètres. Elle permet de convertir systématiquement une entrée en tableau pour une manipulation uniforme. Par exemple, si une méthode accepte une chaîne ou un tableau, Array garantit que le paramètre sera traité comme un tableau.
- Impact sur les Objets Non Standard : Si un objet passé à Array ne peut pas être converti en tableau, la fonction l'inclura dans un tableau comme élément unique. Cela assure une grande robustesse, car tout objet (même non prévu) peut être encapsulé pour être manipulé dans un contexte de liste.
Exemple
Voici un exemple typique de l'utilisation de cette méthode :
Essayer maintenant !
on obtiendra le résultat suivant :
a = [1]b = [1, 2, 3, 4, 5]
c = [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
Dernière mise à jour : Lundi, le 24 novembre 2014