Quelle est la différence entre nil, empty et blank ?

Créé le 08 Dec 2022 - Mis à jour le 04 Jul 2023 - Créé par Fabien Berthoux - ruby

Nil, empty et blank sont des états qui peuvent être associés à certaines variables dans le langage Ruby. Nil est un état qui est généralement assigné à une variable lorsqu’aucune valeur n’est assignée à cette variable. Cela peut être vu comme une valeur nulle ou vide. Empty est un état où une valeur n’est pas nécessairement assignée à une variable, mais il y a toujours un type de valeur associé à cette variable. Blank est un état où une valeur est assignée à une variable, mais elle est vide ou nulle.

Voici un exemple de code pour illustrer ces états:

name = nil
# nil

name = ""
# empty

name = " "
# blank

Qu’est-ce que nil ?


Nil est un état qui est généralement assigné à une variable lorsqu’aucune valeur n’est assignée à cette variable. Cela peut être vu comme une valeur nulle ou vide. Il est généralement utilisé en Ruby pour signaler qu’une valeur n’a pas encore été assignée ou n’existe pas.

Voici un exemple de code pour illustrer cet état:

name = nil
# nil

Qu’est-ce que empty ?


Empty est un état où une valeur n’est pas nécessairement assignée à une variable, mais il y a toujours un type de valeur associé à cette variable. Par exemple, si la variable est définie comme une chaîne de caractères, elle sera considérée comme empty si elle est définie comme une chaîne vide.

Voici un exemple de code pour illustrer cet état:

name = ""
# empty

Qu’est-ce que blank ?


Blank est un état où une valeur est assignée à une variable, mais elle est vide ou nulle. Cela peut inclure des chaînes de caractères vides, des nombres nuls, des booléens nuls, etc.

Voici un exemple de code pour illustrer cet état:

name = " "
# blank

Quand Ruby considère-t-il une variable comme nil ?


Ruby considère une variable comme nil lorsqu’aucune valeur n’est assignée à la variable. Cela peut être vu comme une valeur nulle ou vide.

Voici un exemple de code pour illustrer cet état:

name = nil
# nil

Quel est le résultat de la méthode empty?() ?


La méthode empty?() est une méthode qui peut être utilisée pour vérifier si une variable est vide ou non. Elle renverra true si la variable est vide et false si elle n’est pas vide.

Voici un exemple de code pour illustrer cela:

name = ""
name.empty? # => true

Quand Ruby considère-t-il une variable comme empty ?


Ruby considère une variable comme empty lorsqu’une valeur est assignée à la variable, mais elle est vide ou nulle. Cela peut inclure des chaînes de caractères vides, des nombres nuls, des booléens nuls, etc.

Voici un exemple de code pour illustrer cet état:

name = ""
# empty

Quand Ruby considère-t-il une variable comme blank ?


Ruby considère une variable comme blank lorsqu’une valeur est assignée à la variable, mais elle est vide ou nulle. Cela peut inclure des chaînes de caractères vides, des nombres nuls, des booléens nuls, etc.

Voici un exemple de code pour illustrer cet état:

name = " "
# blank

Quelles sont les méthodes associées à nil ?


Il existe plusieurs méthodes associées à nil dans le langage Ruby. La méthode nil?() peut être utilisée pour vérifier si une variable est définie comme nil ou non. La méthode is_a?(NilClass) peut également être utilisée pour vérifier si une variable est définie comme nil ou non.

Voici un exemple de code pour illustrer ces méthodes:

name = nil

name.nil? # => true
name.is_a?(NilClass) # => true