Différence entre les chaînes de caractères et les symboles Ruby [Débutant]

Ceci est le premier message.

Veuillez signaler toute erreur.

Différence entre les chaînes et les symboles

Les chaînes de caractères et les symboles sont similaires en apparence mais différents.

La différence est que l'ID d'objet donné est différent.

Dans le cas d'une chaîne de caractères, l'ID d'objet donné sera différent même si deux chaînes de caractères identiques sont préparées, mais dans le cas d'un symbole, le même ID d'objet sera donné même si deux mêmes chaînes de caractères sont préparées.

En regardant spécifiquement, cela ressemble à ceci. Ruby_symbol1.png Résultat d'exécution Ruby_symbol2.png C'est ce qui se produit lorsque vous affichez l'ID d'objet à l'aide de la méthode "object_id" qui affiche l'ID d'objet de l'objet.

Les ID d'objet pour les deux chaînes supérieures ("JUN") sont affichés différemment, mais les ID d'objet pour le symbole (: JUN) sont identiques.

Au fait Ruby_symbol3.png Ruby_symbol4.png Évidemment, si vous l'exécutez à nouveau, l'ID d'objet donné à la chaîne sera différent par rapport à la première fois, mais l'ID d'objet du symbole sera le même que la première fois.

De plus, lors de la première exécution, il était affiché dans toutes les lettres majuscules (: JUN), mais lorsqu'il est écrit en lettres minuscules (: jun), un ID d'objet différent de celui en majuscules est donné.

Recommended Posts

Différence entre les chaînes de caractères et les symboles Ruby [Débutant]
Différences entre Java "débutant" et Kotlin
Symboles et rubis destructeur
[Comprendre] Différence entre le hachage et le tableau dans Ruby
À propos des hachages et symboles Ruby
Différences entre IndexOutOfBoundsException et ArrayIndexOutOfBoundsException
Différences dans la gestion des chaînes entre Java et Perl
[Ruby] Différence entre obtenir et publier
[Ruby] Différence entre is_a? Et instance_of?
À propos de la différence entre la classe Applet et la classe JApplet
Différences entre Java et .NET Framework
Remarque: Différence entre Ruby "p" et "met"
Différence entre la variable d'instance Ruby et la variable locale
Différence entre la préface et le suffixe des opérateurs
[Java] Différences entre les variables d'instance et les variables de classe
Résumé des hachages et symboles dans Ruby
Différence entre "|| =" et "instance_variable_defined?" Dans Ruby memo
[Rails] Différence entre redirect_to et render [Débutant]
À propos des symboles Ruby
Différences entre Spring Initializr Packaging JAR et WAR
Résumer les différences entre l'écriture C # et Java
[Ruby] Différence entre les put et les retours, les valeurs de sortie et de retour
Rubis et gemme
Ruby Comment convertir entre les majuscules et les minuscules
[Ruby] J'ai réfléchi à la différence entre each_with_index et each.with_index
Différences entre les classes et les instances dans Ruby
En fait, Ruby fait la distinction entre les sauts de ligne et les espaces
Différences entre Fetch Type LAZY et EAGER dans Hibernate
[Java débutant] Différence entre la longueur et la longueur () ~ Je ne sais pas ~
[Ruby] Classes et instances
[Ruby] Big Decimal et DECIMAL
Héritage et délégation Ruby
Basculer entre JDK 7 et JDK 8
Différence entre vh et%
Différence entre i ++ et ++ i
[Apprentissage Java Bronze] Différence entre l'encapsulation, le masquage des données et le masquage des informations
Différences entre l'espace de noms, le module, la portée et comme dans le routage Rails
Pensez aux différences entre les fonctions et les méthodes (en Java)
La différence entre la programmation qui utilise des classes Ruby et la programmation qui n'utilise pas