Курс языка программирования Raku / Основы / Больше о типах / Приведение типов данных

Приведение типов с помощью префиксных операторов

Еще один способ преобразования типа объекта — использование префиксных операторов. Это однобуквенные операторы, которые размещаются непосредственно перед значением (или переменной).

~ | Преобразование в строку + | Преобразование в число ? | Преобразование в логическое значение

Рассмотрим пример создания логического значения из целого числа:

say ?42; # True

Преобразование в строку аналогично:

my $n = -30;
my $s = ~$n;
say $s.chars; # 3, так как "-30" содержит 3 символа

Обратите внимание, что при числовом преобразовании тип преобразованного значения зависит от самого числа. Сравните следующие преобразования из строк:

say (+'100').WHAT;   # (Int)
say (+'3.14').WHAT;  # (Rat)
say (+'27E-1').WHAT; # (Num)

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

my $value = 42;
say so $value; # True
say $value.so; # True

Навигация по курсу

Приведение типов с помощью конструкторов типов   |   Числа True и False


💪 Или перейдите сразу к упражнениям этого раздела.