Курс по Raku / Функционално, паралелно, реактивно и уеб програмиране / Паралелно програмиране / Джанкшъни

Създаване на джанкшъни

Най-простият начин да изградите съединение са съединителните оператори. Операторът | прави съединение any:

my $j = 1 | 2 | 3;
say $j; # any(1, 2, 3)

Стойността $j означава „1, или 2, или 3“. Видовете съединения са четири, всеки със свой оператор и съответна функция:

  • any( … ) или a | b — истина, ако съвпада която и да е стойност
  • all( … ) или a & b — истина, ако съвпадат всички стойности
  • one( … ) или a ^ b — истина, ако съвпада точно една стойност
  • none( … ) — истина, ако не съвпада нито една стойност (това е единственият вид без операторна форма — използвайте функцията)

Функционалните форми са удобни със списък:

say all(3, 7, 2);  # all(3, 7, 2)
say none(1, 2, 3); # none(1, 2, 3)

Съединението е най-полезно в сравнение. Въпросът дали дадено число е равно на съединение any го проверява срещу всяка стойност наведнъж:

say so 2 == any(1, 2, 3); # True
say so 5 == any(1, 2, 3); # False

Операторната форма се чете също толкова естествено — 1 | 2 | 3 е точно същото съединение any:

say so 2 == 1 | 2 | 3; # True
say so 5 == 1 | 2 | 3; # False

so превръща съединителния резултат в обикновена булева стойност. Следващата тема разглежда какво се случва зад кулисите, когато направите това.

Практика

Направете 1 тест върху съдържанието на тази тема.

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

Джанкшъни   |   Тест — Джанкшъни


💪 Или преминете направо към упражненията в този раздел.