Все на день: и кто помнит, и кого (Марк Аврелий).

Ruby – переменные, константы и литералы

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
16 июня 2018
Язык программирования Ruby

Просмотров: 6

Переменные – это ячейки памяти, в которых хранятся любые данные, которые будут использоваться любой программой.

Ruby поддерживает пять типов переменных. Вы уже прошли небольшое описание этих переменных в предыдущей главе. Эти пять типов переменных описаны в этой главе.

Глобальные переменные Ruby

Глобальные переменные начинаются с $. Неинициализированные глобальные переменные имеют значение nil и создают предупреждения с параметром -w.

Присвоение глобальных переменных изменяет глобальный статус. Не рекомендуется использовать глобальные переменные. Они делают программы загадочными.

Ниже приведен пример использования глобальной переменной.

 

Здесь $ global_variable является глобальной переменной. Это приведет к следующему результату:

Примечание
В Ruby вы можете получить доступ к значению любой переменной или константы, помещая символ хеша (#) непосредственно перед этой переменной или константой.

Переменные экземпляра Ruby

Переменные экземпляра начинаются с @. Неинициализированные переменные экземпляра имеют значение nil и создают предупреждения с параметром -w.

Ниже приведен пример использования переменных экземпляра.

 

Здесь @cust_id, @cust_name и @cust_addr являются переменными экземпляра. Это приведет к следующему результату:

Переменные класса Ruby

Переменные класса начинаются с @@ и должны быть инициализированы до их использования в определениях методов.

Ссылка на неинициализированную переменную класса вызывает ошибку. Переменные класса распределяются между потомками класса или модуля, в которых определены переменные класса.

Переопределение переменных класса создает предупреждения с параметром -w.

Ниже приведен пример использования переменной класса:

 

Здесь @@ no_of_customers – это переменная класса. Это приведет к следующему результату:

Локальные переменные Ruby

Локальные переменные начинаются с строчной буквы или _. Объем локальной переменной варьируется от класса, модуля, def или до соответствующего конца или от скобки открытия блока до его близкой привязки {}.

Когда ссылается неинициализированная локальная переменная, она интерпретируется как вызов метода, который не имеет аргументов.

Назначение неинициализированных локальных переменных также служит объявлением переменной. Переменные начинают существовать до тех пор, пока не будет достигнут конец текущей области. Время жизни локальных переменных определяется, когда Ruby анализирует программу.

В приведенном выше примере локальными переменными являются id, name и addr.

Константы Ruby

Константы начинаются с прописной буквы. Константы, определенные в классе или модуле, могут быть доступны из этого класса или модуля, а те, которые определены вне класса или модуля, могут быть доступны по всему миру.

Константы не могут быть определены в методах. Обращение к неинициализированной константе вызывает ошибку. Выполнение задания константе, которая уже инициализирована, выдает предупреждение.

 

Здесь VAR1 и VAR2 являются константами. Это приведет к следующему результату:

Псевдо-переменные Ruby

Это специальные переменные, которые имеют локальные переменные, но ведут себя как константы. Вы не можете присвоить значения этим переменным.

  • self – Объект приемника текущего метода.
  • true – значение, представляющее true.
  • false – значение, представляющее false.
  • nil – значение, представляющее неопределенный.
  • __FILE__ – имя текущего исходного файла.
  • __LINE__ – номер текущей строки в исходном файле.

Основные литералы в Ruby

Правила, используемые Ruby для литералов, просты и интуитивны. В этом разделе объясняются все основные литералы Ruby.

Целочисленные числа

Ruby поддерживает целые числа. Целое число может варьироваться от -2 30 до 2 30-1 или от -2 62 до 2 62-1 . Целые в этом диапазоне являются объектами класса Fixnum, а целые числа вне этого диапазона хранятся в объектах класса Bignum .

Вы пишете целые числа, используя необязательный главный знак, необязательный базовый индикатор (0 для восьмеричного, 0x для шестнадцатеричного или 0b для двоичного), за которым следует строка цифр в соответствующей базе. Символы подчеркивания игнорируются в цифровой строке.

Вы также можете получить целочисленное значение, соответствующее символу ASCII, или вывести последовательность, предшествуя ей знаком вопроса.

Пример

 

Примечание
Класс и объекты объясняются в отдельной главе этого руководства.

Плавающие числа

Ruby поддерживает плавающие числа. Они также являются числами, но с десятичными знаками. Числа с плавающей запятой являются объектами класса Float и могут быть любыми из следующих:

Пример

 

Строковые литералы

Строки Ruby – это просто последовательности 8-битных байтов, и они являются объектами класса String. Строки с двойными кавычками допускают замещение и обратную косую черту, но строки с одним кавычком не позволяют замену и позволяют обозначать обратную косую черту только для \\ и \

Пример

 

Это приведет к следующему результату:

 

Вы можете подставить значение любого выражения Ruby в строку, используя последовательность # {expr} . Здесь expr может быть любым выражением ruby.

 

Это приведет к следующему результату:

Обозначения с обратной косой чертой

Ниже приведен список обозначений Backslash, поддерживаемых Ruby:

\nНовая линия (0x0a)
\rВозврат каретки (0x0d)
\fПодача бумаги (0x0c)
\bклавиша Backspace (0x08)
\aзвонок (0x07)
\eEscape (0x1b)
\sПробел (0x20)
\nnnВосьмеричная запись (n being 0-7)
\xnnШестнадцатеричное представление (n being 0-9, a-f, or A-F)
\cx, \C-xControl-x
\M-xMeta-x (c | 0x80)
\M-\C-xMeta-Control-x
\xСимвол x

Массивы в Ruby

Для более подробной информации о Ruby Strings, пройдите на страницу Ruby. Строки.

Литералы массивов в Ruby создаются путем размещения разделенных запятыми рядов ссылок на объекты между квадратными скобками. Задняя запятая игнорируется.

Пример

 

Это приведет к следующему результату:

 

Для более подробной информации о Ruby Arrays, пройдите на страницу Ruby. Массивы.

Хеши в Ruby

Буквальный Хэш в Ruby создается путем размещения списка пар ключ / значение между фигурными скобками с запятой или последовательностью => между ключом и значением. Задняя запятая игнорируется.

Пример

 

Это приведет к следующему результату:

 

Для более подробной информации о Ruby Hashes, пройдите на страницу Ruby. Хэши.

Диапазоны в Ruby

Диапазон представляет собой интервал, который представляет собой набор значений с началом и концом. Диапазоны могут быть построены с использованием литералов s..e и s … e или с Range.new.

Диапазоны, построенные с использованием .. работают от начала до конца включительно. Те, которые созданы с использованием … исключают конечное значение. При использовании в качестве итератора диапазоны возвращают каждое значение в последовательности.

Диапазон (1..5) означает, что он включает в себя значения 1, 2, 3, 4, 5, а диапазон (1 … 5) означает, что он включает 1, 2, 3, 4 значения.

Пример

 

Это приведет к следующему результату:

 

Для более подробной информации о Ruby Ranges, пройдите на сайт Ruby. Диапазоны.

 

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Если статья понравилась, то поделитесь ей в социальных сетях:

Читайте также

    Добавить комментарий

    Войти с помощью: 

    Ваш e-mail не будет опубликован. Обязательные поля помечены *

    ПОИГРАЙ, РАССЛАБЬСЯ

    Сообщить об опечатке

    Текст, который будет отправлен нашим редакторам:

    Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

    badge
    Обратный звонок 1
    Отправить
    galka

    Спасибо! Ваша заявка принята

    close
    galka

    Спасибо! Ваша заявка принята

    close