Ruby Language
Stałe
Szukaj…
Składnia
- MY_CONSTANT_NAME = „moja wartość”
Uwagi
Stałe są przydatne w Rubim, gdy masz wartości, których nie chcesz, aby przypadkowo zostały zmienione w programie, takie jak klucze API.
Zdefiniuj stałą
MY_CONSTANT = "Hello, world" # constant
Constant = 'This is also constant' # constant
my_variable = "Hello, venus" # not constatn
Stała nazwa zaczyna się od dużej litery. Wszystko, co zaczyna się od dużej litery, w Ruby jest uważane za constant
. Zatem class
i module
są również stałe. Najlepszą praktyką jest stosowanie całej dużej litery do deklarowania stałej.
Zmodyfikuj stałą
MY_CONSTANT = "Hello, world"
MY_CONSTANT = "Hullo, world"
Powyższy kod powoduje wyświetlenie ostrzeżenia, ponieważ powinieneś używać zmiennych, jeśli chcesz zmienić ich wartości. Można jednak zmieniać jedną literę na raz bez ostrzeżenia, tak jak to:
MY_CONSTANT = "Hello, world"
MY_CONSTANT[1] = "u"
Teraz, po zmianie drugiej litery MY_CONSTANT
, staje się ona "Hullo, world"
.
Stałe nie mogą być zdefiniowane w metodach
def say_hi
MESSAGE = "Hello"
puts MESSAGE
end
Powyższy kod powoduje błąd: SyntaxError: (irb):2: dynamic constant assignment
.
Definiuj i zmieniaj stałe w klasie
class Message
DEFAULT_MESSAGE = "Hello, world"
def speak(message = nil)
if message
puts message
else
puts DEFAULT_MESSAGE
end
end
end
Stałą DEFAULT_MESSAGE
można zmienić za pomocą następującego kodu:
Message::DEFAULT_MESSAGE = "Hullo, world"