Expressies

Expressies

Expressies kunnen getallen (bijv. 3.4), tekstreeksen tussen enkele of dubbele aanhalingstekens (bijv. 'hallo' or “hallo”) of meer ingewikkelde expressies zijn. Voor expressies, zijn er de volgende binaire operators (in volgorde van belangrijkheid):

  • && || ^^: combineert Boolean waarden (&& = and, || = or, ^^ = xor)
  • < <= == != > >=: vergelijkingen, resulteert in true (1), waar, of false (0), onwaar
  • | & ^: bitwise operators (| = bitwise or, & = bitwise and, ^ = bitwise xor)
  • << >>: bitwise operators (<< = schuif links, >> = schuif rechts)
  • + -: optelling, aftrekking
  • * / div mod: vermenigvuldiging, delen, integer delen, and modulo

Daarnaast bestaan ook de volgende operators:

  • !: not, veranderd true in false en false in true
  • -: maakt de waarde negatief
  • ~: maakt de waarde m.b.v. bits negatief

Als waarden kan je ook getallen, variabelen, of functies die waarden teruggeven gebruiken. Subexpressies kunnen tussen haakjes worden geplaatst. Alle operators werken voor getallen. Vergelijkingen werken ook voor tekstreeksen en + voegt tekstreeksen samen. (Merk op dat, in tegenstelling tot bepaalde talen, beide argumenten voor een Boolean operatie worden altijd uitgevoerd, zelfs wanneer het eerste argument al bepaald wat eruit komt.)

Voorbeeld

Hier is een voorbeeld met een paar definities:

{
  x = 23;
  str = 'hallo wereld';
  y += 5;
  x *= y;
  x = y << 2;
  x = 23*((2+4) / sin(y));
  str = 'hallo' + " wereld";
  b = (x < 5) && !(x==2 || x==4);
}