Ruby Fundamentals

Maîtriser la Fusion de Tableaux en Ruby

Spread the love

Ruby offre plusieurs façons de combiner des tableaux, chacune ayant ses propres caractéristiques. Ce guide explore les méthodes les plus courantes et les plus efficaces, en fournissant des exemples pour illustrer leur comportement.

Table des matières

  1. Fusionner des tableaux avec concat
  2. Fusionner des tableaux avec l’opérateur +
  3. Fusionner des tableaux avec push et l’opérateur splat
  4. Fusionner des tableaux avec append
  5. Fusionner des tableaux avec union
  6. Fusionner des tableaux avec l’opérateur |
  7. Conclusion

1. Fusionner des tableaux avec concat

La méthode concat modifie le tableau original en ajoutant les éléments d’un autre tableau à sa fin. C’est une opération sur place, modifiant directement le tableau sur lequel elle est appelée.


array1 = [1, 2, 3]
array2 = [4, 5, 6]

array1.concat(array2)
puts array1  # Sortie : [1, 2, 3, 4, 5, 6]
puts array2  # Sortie : [4, 5, 6] (array2 reste inchangé)

2. Fusionner des tableaux avec l’opérateur +

L’opérateur + crée un nouveau tableau contenant tous les éléments des deux tableaux. Les tableaux originaux restent inchangés.


array1 = [1, 2, 3]
array2 = [4, 5, 6]

merged_array = array1 + array2
puts merged_array  # Sortie : [1, 2, 3, 4, 5, 6]
puts array1  # Sortie : [1, 2, 3] (array1 reste inchangé)
puts array2  # Sortie : [4, 5, 6] (array2 reste inchangé)

3. Fusionner des tableaux avec push et l’opérateur splat

La méthode push ajoute des éléments à la fin d’un tableau. L’opérateur splat (*) déballe un autre tableau, permettant d’ajouter tous ses éléments à la fois. Ceci, comme concat, modifie le tableau original.


array1 = [1, 2, 3]
array2 = [4, 5, 6]

array1.push(*array2)
puts array1  # Sortie : [1, 2, 3, 4, 5, 6]
puts array2  # Sortie : [4, 5, 6] (array2 reste inchangé)

4. Fusionner des tableaux avec append

La méthode append est un synonyme de push ; elles fonctionnent de manière identique.


array1 = [1, 2, 3]
array2 = [4, 5, 6]

array1.append(*array2)
puts array1  # Sortie : [1, 2, 3, 4, 5, 6]
puts array2  # Sortie : [4, 5, 6] (array2 reste inchangé)

5. Fusionner des tableaux avec union

La méthode union (ou son alias, l’opérateur |) renvoie un nouveau tableau contenant uniquement les éléments uniques des deux tableaux d’entrée. Les éléments dupliqués sont éliminés.


array1 = [1, 2, 3, 3]
array2 = [3, 4, 5]

merged_array = array1.union(array2)
puts merged_array  # Sortie : [1, 2, 3, 4, 5]
puts array1  # Sortie : [1, 2, 3, 3] (array1 reste inchangé)
puts array2  # Sortie : [3, 4, 5] (array2 reste inchangé)

6. Fusionner des tableaux avec l’opérateur |

Ceci est une abréviation de la méthode union, produisant le même résultat.


array1 = [1, 2, 3, 3]
array2 = [3, 4, 5]

merged_array = array1 | array2
puts merged_array  # Sortie : [1, 2, 3, 4, 5]
puts array1  # Sortie : [1, 2, 3, 3] (array1 reste inchangé)
puts array2  # Sortie : [3, 4, 5] (array2 reste inchangé)

7. Conclusion

Ruby fournit diverses méthodes pour la fusion de tableaux, permettant de choisir l’approche optimale en fonction de vos besoins spécifiques. Déterminez si une modification sur place ou un nouveau tableau est nécessaire et si les éléments dupliqués doivent être conservés. Pour créer de nouveaux tableaux, l’opérateur + et la méthode union offrent généralement une meilleure lisibilité. concat et push sont efficaces pour modifier les tableaux directement. Comprendre ces nuances garantit l’écriture d’un code Ruby clair et efficace.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *