Operatorer
Operatorer angir at operasjoner, for eksempel addisjon og subtraksjon, skal utføres på andre deler av et uttrykk.
Enkelte operatorer har ulike betydninger, basert på datatypene som er i bruk. Plusstegnet (+) kan for eksempel angi enten addisjon mellom heltall eller sammenkjeding mellom strenger. I et komplekst uttrykk evalueres operatorene i den rekkefølgen de har forrang.
Følgende tabell viser betydningen til hver operator. Operatorene er listet opp i prioritert rekkefølge.
Operatorer (i prioritert rekkefølge) | Betydning | Bruk | |
---|---|---|---|
Parenteser | ( ) | Grupperer uttrykk logisk. | (<expr>) |
Aritmetiske operatorer | + - | Ensartet pluss og minus. Unært minus endrer tegnet til et tall, unært pluss gjør det ikke. | +<expr>-<expr> |
* / | Multiplisering og divisjon. Ved divisjon av to heltall returneres et heltall (hvis resultatet er et flytetall, trunkeres verdien for å få et heltall). | <expr>*<expr><expr>/<expr> | |
+ - | Addisjon og subtraksjon av numeriske verdier. Minus subtraherer også antall sekunder mellom to tider. | <expr>+<expr><expr>-<expr> | |
Strengsammensettingsoperator | + | Setter sammen strenger. | <expr>+<expr> |
Relative operatorer (med samme prioritet) |
|
|
|
Logiske operatorer | ikke | Evalueres til sann når det boolske uttrykket er usant og evalueres til usann når det boolske uttrykket er sant. | ikke <expr> |
og | Evalueres til sann når begge uttrykkene er sanne. | <expr> og <expr> | |
eller | Evalueres til sann når et av uttrykkene er sant. | <expr> eller <expr> | |
lik | Evalueres til sann når uttrykket samsvarer med et mønster. Mønsteret inneholder tegnstrengen det søkes etter. | lik <expr> | |
er null er ikke null | Kontrollerer for nullverdier. En nullverdi representerer manglende data. | er null er ikke null |
Bruke operatorer
I et uttrykk må operandene og resultatet vanligvis ha samme datatype, og operatorene må være gyldige for denne datatypen. Legg merke til at det er tillatt å blande numeriske datatyper (det vil si flytetall og heltall) i et uttrykk. For eksempel er uttrykkene som vises nedenfor, gyldige (FloatVal er en variabel av typen flytetall):
3 * 2,5
FloatVal > 2
I blandede uttrykk omdannes heltall implisitt til flytetall før operasjonene utføres.
Operatorforrang
I et uttrykk evalueres operatorer med samme forrang, fra venstre til høyre. I heltallsuttrykket som vises nedenfor, deles for eksempel 6 med 4 fordi divisjon og multiplisering har samme forrang. Deretter blir resultatet avkortet (fordi divisoren og dividenden er heltall) og multiplisert med 2.
6/4*2 = 2
I et uttrykk med mange operatorer med blandet forrang, vil raus bruk av parenteser gjøre det enklere å forstå og vedlikeholde uttrykket. Nedenfor finner du to versjoner av samme uttrykk. Parentesene som er brukt i den andre versjonen, gjør imidlertid uttrykket mer logisk og tydelig.
Num + 2 > 80 eller Num - 2 < -20
((Num + 2) > 80) eller ((Num - 2) < -20)