Эликсир - переменные

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

Типы переменных

Elixir поддерживает следующие основные типы переменных.

Целое число

Они используются для целых чисел. Они имеют размер 32 бита в 32-битной архитектуре и 64 бита в 64-битной архитектуре. Целые числа всегда подписываются в эликсире. Если целое число начинает увеличиваться в размере сверх своего предела, elixir преобразовывает его в большое целое число, которое занимает память в диапазоне от 3 до n слов, в зависимости от того, какое из них может поместиться в памяти.

Плавает

В эликсире поплавки имеют 64-битную точность. Они также похожи на целые числа с точки зрения памяти. При определении числа с плавающей запятой можно использовать экспоненциальную запись.

Булево

Они могут принимать 2 значения: истинное или ложное.

Струны

Строки закодированы в кодировке utf-8 в elixir. У них есть модуль строк, который предоставляет программисту множество функций для управления строками.

Анонимные функции / лямбды

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

Коллекции

В Elixir доступно множество типов коллекций. Некоторые из них - это списки, кортежи, карты, двоичные файлы и т. Д. Они будут обсуждаться в следующих главах.

Объявление переменной

Объявление переменной сообщает интерпретатору, где и сколько создать хранилище для переменной. Эликсир не позволяет нам просто объявить переменную. Переменная должна быть объявлена ​​и присвоено значение одновременно. Например, чтобы создать переменную с именем life и присвоить ей значение 42, мы делаем следующее:

life = 42

Это будет связывать жизнь переменной на значение 42. Если мы хотим передать эту переменную новое значение, мы можем сделать это, используя тот же синтаксис, что и выше, т.е.

life = "Hello world"

Именование переменных

Именование переменных следует за snake_caseсоглашение в Elixir, т. е. все переменные должны начинаться со строчной буквы, за которой следует 0 или более букв (как в верхнем, так и в нижнем регистре), а в конце следует необязательный знак '?' ИЛИ ЖЕ '!'.

Имена переменных также могут начинаться с символа подчеркивания в начале, но его следует использовать только при игнорировании переменной, т. Е. Эта переменная больше не будет использоваться, а должна быть назначена чему-либо.

Печать переменных

В интерактивной оболочке переменные будут напечатаны, если вы просто введете имя переменной. Например, если вы создаете переменную -

life = 42

И введите 'жизнь' в свою оболочку, вы получите результат как -

42

Но если вы хотите вывести переменную на консоль (при запуске внешнего скрипта из файла), вам необходимо предоставить переменную в качестве ввода для IO.puts функция -

life = 42  
IO.puts life

или же

life = 42 
IO.puts(life)

Это даст вам следующий результат -

42