Kurso de Raku / Esencoj / Datentipa konvertado
Konvertante tipojn kun prefiksaj operatoroj
Alia maniero transformi la tipon de objekto estas uzi prefiksajn operatorojn. Tiuj estas unu-karakteraj operatoroj, kiuj estas metitaj tuj antaŭ la valoro (aŭ variablo).
~ |
Ŝnura devigo |
+ |
Nombra devigo |
? |
Boolea devigo |
Konsideru ekzemplon de kreado de Boolea valoro el entjero:
say ?42; # Vera
Konverti al ŝnuro estas simila:
my $n = -30;
my $s = ~$n;
say $s.chars; # 3, ĉar "-30" havas 3 karakterojn
Notu, ke kun nombra konvertiĝo, la tipo de la konvertita valoro malsamas depende de la nombro en demando. Komparu la sekvajn konvertiĝojn el ŝnuroj:
say (+'100').WHAT; # (Int)
say (+'3.14').WHAT; # (Rat)
say (+'27E-1').WHAT; # (Num)
Por Booleaj konvertiĝoj, estas alia rutino nomata so
. Vi povas uzi ĝin kiel prefiksan operatoron aŭ kiel metodon:
my $value = 42;
say so $value; # Vera
say $value.so; # Vera
Kurso navigado
← Datentipa konvertado / Konvertante tipojn uzante konstruistajn formojn | 💪 Ekzercoj: Datentipa konvertado →
Ĉi tiu paĝo estas aŭtomate tradukita per ChatGPT 4o. Originala angla teksto
Tradukoj de ĉi tiu paĝo: English • Deutsch • Español • Italiano • Latviešu • Nederlands • Български • Русский • Українська