Ruby apprentissage 4

Méthodes et ainsi de suite 4

Actuellement, j'étudie pour obtenir la médaille d'argent de l'examen de certification d'ingénieur Ruby. J'ai encore beaucoup de compréhension de la langue, donc je vais sortir des bases.

ID d'objet

Extrait d'une fausse question

foo = [1,2,3]
bar = foo
baz = foo.dup #Copier l'objet

bar[3] = 4
p foo
p bar
p baz

=>[1, 2, 3, 4]
  [1, 2, 3, 4]
  [1, 2, 3]

Quel est le principe selon lequel la mise à jour de bar est appliquée à la variable foo?

foo = [1,2,3]
bar = foo
baz = foo.dup

p foo.object_id #Sortir l'ID de l'objet référencé
p bar.object_id
p baz.object_id

=>70275736077180
  70275736077180
  70275736077160

Puisque foo et bar font référence au même objet, lorsque bar est mis à jour, foo est intriqué et mis à jour. D'autre part, baz est un double de l'objet, donc la cible de référence est différente.

méthode de fractionnement

Génère un tableau en utilisant la chaîne de caractères spécifiée dans le premier argument comme délimiteur.

servant = "saber,archer,lancer,rider,assassin,caster,berserker"
p servant.split!(/,/)

=> ["saber", "archer", "lancer", "rider", "assassin", "caster", "berserker"]

Le nombre d'éléments du tableau peut être spécifié en spécifiant une valeur numérique dans le deuxième argument.

servant = "saber,archer,lancer,rider,assassin,caster,berserker"
p servant.split!(/,/, 3)

=> ["saber", "archer", "lancer,rider,assassin,caster,berserker"]
#Le troisième élément n'est pas séparé et est regroupé.

delete, méthode (chaîne)

Supprime le caractère spécifié par l'argument de self. Ajouter! Pour en faire une méthode destructrice.

puts "0123456789".delete("0-58") #"-"Vous pouvez spécifier la plage en sandwich(Dans ce cas, un nombre de 0 à 5)

=> "679"

To_Be_Continued...

Recommended Posts

Ruby apprentissage 4
Ruby apprentissage 5
Ruby apprentissage 3
Ruby apprentissage 2
Ruby apprentissage 6
Ruby apprentissage 1
Points d'apprentissage Ruby (basique)
Record d'apprentissage de Ruby on rails -2020.10.03
Record d'apprentissage Ruby on rails -2020.10.04
Record d'apprentissage de Ruby on rails -2020.10.05
Record d'apprentissage de Ruby on rails -2020.10.09
Record d'apprentissage Ruby on rails-2020.10.07 ②
Record d'apprentissage Ruby on rails-2020.10.07 ①
Record d'apprentissage de Ruby on rails -2020.10.06
[Ruby] Tableau
Bases de Ruby
Apprendre Ruby avec AtCoder 6 [Concours 168 Donc]
Revue Ruby 2
Ajout de rubis
Apprentissage des servlets
Sortie d'apprentissage ~ 11/3 ~
Paramètre Ruby 2
Problème de rubis ⑦
Apprentissage Maven