À propos de l'opérateur de produit Ruby (&) et de l'opérateur somme (|)

Quand j'écrivais du code au travail, je n'ai vu qu'un seul opérateur, ni && ni &. Quand je l'ai recherché, il n'y avait pas d'article à l'improviste, alors je vais en prendre note. À propos de l'opérateur somme ...

Opérateur de produit (&)

https://docs.ruby-lang.org/ja/latest/method/Array/i/=26.html

Comme indiqué dans la référence, il effectue le fonctionnement du produit produit de l'ensemble. Renvoie un nouveau tableau d'éléments présents dans les deux tableaux. Identique à l'intersection Array #. Si vous spécifiez un objet autre qu'un tableau, la conversion de type sera effectuée implicitement, mais j'étudierai à nouveau cette zone.

multiple_operation.rb


a = [1, 2, 3, 4, 5, 6]
b = [2, 4, 6, 8, 10]
a & b
# => [2, 4, 6]

fruits = ['apple', 'banana', 'grape', 'melon', 'strawberry']
favorite_fruits = ['banana', 'cherry', 'peach', 'strawberry']
fruits & favorite_fruits
# => ['banana', 'strawberry']

a = 10
b = 15
a & b
# => 10

a = 0b1010
b = 0b1111
a & b
# => 10

Opérateur de produit (|)

https://docs.ruby-lang.org/ja/latest/method/Array/i/=7c.html

Ceci est également décrit dans la référence, mais l'opération de somme de l'ensemble est effectuée. Renvoie un tableau contenant les éléments contenus dans l'un des deux tableaux. Il dit que les éléments en double seront supprimés, mais comme il s'agit d'un ensemble de somme, est-ce une erreur dans la description?

sum_operation.rb


a = [1, 2, 3, 4, 5, 6]
b = [2, 4, 6, 8, 10]
a | b
# =>  [1, 2, 3, 4, 5, 6, 8, 10]

fruits = ['apple', 'banana', 'grape', 'melon', 'strawberry']
favorite_fruits = ['banana', 'cherry', 'peach', 'strawberry']
fruits | favorite_fruits
# => ["apple", "banana", "grape", "melon", "strawberry", "cherry", "peach"]

a = 10
b = 15
a | b
# => 15

a = 0b1010
b = 0b1111
a | b
# => 15

finalement

J'aimerais pouvoir publier de petites histoires. J'ai changé de travail du domaine médical et suis devenu ingénieur, donc s'il y a des gens dans des circonstances similaires, j'adorerais interagir avec eux!

Recommended Posts

À propos de l'opérateur de produit Ruby (&) et de l'opérateur somme (|)
À propos de Ruby, modèle objet
À propos des classes et des instances Ruby
À propos des guillemets simples et doubles Ruby
À propos de l'héritage orienté objet et du rendement Ruby
À propos des symboles Ruby
À propos de Ruby Hash
À propos des tableaux Ruby
À propos de l'héritage Ruby
À propos de Ruby Block
À propos de Ruby Hash
À propos des symboles Ruby
Rubis et gemme
À propos des méthodes Ruby
Ruby sum est une histoire sobre et étonnante
À propos du module Ruby's Kernel
[Ruby] J'ai réfléchi à la différence entre each_with_index et each.with_index
À propos des messages d'erreur Ruby
[Ruby] Classes et instances
Exploration d'opérateur logique Ruby
À propos de la gestion des exceptions Ruby
Symboles et rubis destructeur
À propos de Ruby Hash (suite)
[Ruby] Big Decimal et DECIMAL
À propos de Bean et DI
À propos des classes et des instances
Différences entre les classes et les instances dans Ruby
À propos de l'opérateur ternaire
Une note approximative sur les tableaux Ruby et les objets de hachage
À propos des méthodes d'instance Ruby
À propos de la redirection et du transfert
Classes et instances Ruby
Héritage et délégation Ruby
À propos de l'encapsulation et de l'héritage
[Note technique] À propos des avantages et des inconvénients de Ruby
À propos de Serializable et serialVersionUID
Méfiez-vous des appels de méthode Ruby et des références de variables
Réflexion sur la logique Ruby
[Ruby] Questions et vérification du nombre d'arguments de méthode
Etudier Java # 2 (\ marque et opérateur)
Différence entre produit et variante
À propos de l'instruction et de l'instruction if
À propos du verrouillage synchronisé et réentrant
Erreurs de syntaxe et contre-mesures Ruby
À propos des expressions régulières dans Ruby
[Java] À propos de String et StringBuilder
À peu près la même et la même valeur
Extension Ruby C et volatile