Raku kurss / Padziļināti / Operatori

Raku operatoru tipi

Jūs jau esat lietojuši daudzus operatorus — +, ~, ++ un citus. Raku valodā operatorus klasificē pēc tā, kur tie atrodas attiecībā pret saviem operandiem. Kategoriju pārzināšana noderēs vēlāk, kad jūs definēsiet savus operatorus.

prefix

Prefiksa operators atrodas pirms viena operanda:

my $x = 5;
say -$x; # -5
say ?$x; # True

Šeit - apgriež skaitļa zīmi, bet ? pārvērš vērtību tās Būla izteiksmē.

infix

Infiksa operators atrodas starp diviem operandiem. Lielākā daļa pazīstamo aritmētisko un virkņu operatoru ir infiksa operatori:

say 3 + 4;       # 7
say 'a' ~ 'b';   # ab

Infiksa operators ne vienmēr ir pieturzīme — tas var būt vārds. Piemēram, operators gcd, ar kuru jūs iepazināties, apskatot veselus skaitļus, ir infiksa operators, kas rakstīts kā nosaukums starp diviem operandiem:

say 12 gcd 18;   # 6

postfix

Postfiksa operators atrodas aiz viena operanda:

my $x = 5;
$x++;
say $x; # 6

circumfix un postcircumfix

Cirkumfiksa operators aptver savu operandu. Kvadrātiekavas, kas veido masīvu, ir cirkumfiksa operators:

my @a = [1, 2, 3];

Postcirkumfiksa operators aptver kaut ko, bet seko aiz terma. Indeksēšana ir postcirkumfiksa operators — [1] aiz @a:

my @a = 10, 20, 30;
say @a[1]; # 20

Šie nosaukumi — prefix, infix, postfix, circumfix un postcircumfix — ir tie paši vārdi, ko Raku lieto, kad jūs deklarējat jaunu operatoru, kā jūs redzēsiet vēlāk.

Prakse

Jūs gaida 3 viktorīnas par šī temata saturu.

Vingrinājumi

Šajā sadaļā ir 3 vingrinājumi. Pirms ķerieties pie vingrinājumiem, izlasiet visus šīs sadaļas tematus.

  1. Skaitīt uz augšu
  2. Vērtības Būla vērtība
  3. Hešu indeksēšana

Kursa navigācija

Operatori   |   Skaitīt uz augšu