ExpertiDict

Ruby · Essencial · Português · Técnico

símbolo

/ˈsĩ.bo.lu/substantivo

Valor imutável e único, escrito como :nome, usado como identificador leve. Dois símbolos iguais são o mesmo objeto, por isso servem de chave de hash.

Onde usar

Aparece em chaves de hash, como { nome: 'Ana' }, e em chamadas como send(:save). Reusar o mesmo símbolo não aloca objeto novo, ao contrário de strings iguais.

Em código

:oi.object_id == :oi.object_id # => true
'oi'.object_id == 'oi'.object_id # => false
user = { nome: 'Ana', idade: 30 }
user[:nome] # => "Ana"

Exemplos

Use símbolo como chave do hash, não string.

O to_sym transforma a string em símbolo.

Cuidado

Não é uma string: :a e 'a' são objetos diferentes, e símbolo não tem métodos de texto como gsub.

Sinônimos

symbol

Veja também

Todos os termos de Ruby