Visual Basic 2005/Operaatorid

Allikas: Vikiõpikud

Operaatorid[muuda]

Visual Basic 2005'le on sisse ehitatud palju operaatoreid, millega saame andmeid mõjutada. Operaator täidab funktsiooni ühel või mitmel alusel operandide vahel. Näiteks me liidame kaks arvväärtusmuutujat operaatoriga "+" ja salvestame saadud väärtuse operaatoriga "=" kolmandasse muutujasse järgnevalt: üldarv x + üldarv y = üldarv z. Kahte muutujat (x, y) kutsutakse operandideks. VB 2005 on palju erinevaid tüüpe operande ja järgnevalt on nad kirja pandud oma funktsioonitähtsuselt.

Aritmeetilised Operaatorid[muuda]

Aritmeetilisi operaatoreid kasutatakse aritmeetikalistes ülesannetes mille arvutatakse numbrilisi väärtuseid. Allpool asetsev tabel iseloomustab neid.

Operaator

Kasutamine
^ Astendamine
- Negatsioon
* Korrutamine
/ Jagamine
\ Jagatise täisosa eraldamine
Mod Jagatise jäägi eraldamine
+ Liitmine
- Lahutamine

Näide[muuda]

See näide iseloomustab, kuidas saab andmeid siduda ja andmeid väärtustada.

   Sub Main()
       Dim a As String = "Konstandi pii ligikaudne väärtus on "
       Dim b As String = ", millest täisosa on "
       Dim c As String = " ja murdosa "
       Const pii As Double = Math.PI
       Dim täisosa As Integer = pi
       Dim murdosa As Double = pii Mod 1
       Dim Teade As String = a & pii & b & täisosa & c & murdosa & "."
       Console.WriteLine(Teade)
       Console.Read()
   End Sub

või

   Sub Main()
       Dim Teade As String = "Konstandi pii ligikaudne väärtus on {1}," & _
       "millest täisosa on {2} ja murdosa {3}."
       Const pi As Double = Math.PI
       Dim murdosa As Double = pii Mod 1
       Dim täisosa As Integer = pii
       Console.WriteLine(Teade, vbNewLine, pii, täisosa, murdosa)
       Console.Read()
   End Sub

NB: Konsooli ilmuks teade:

"Konstandi pii ligikaudne väärtus on 3,14159265358979, millest täisosa on 3 ja murdosa 0,14159265358979."

Aheldamise operaatorid ehk sidujad[muuda]

Aheldamise operaatorid ühendavad mitu sõnet üheks.

Operaator

Kasutamine
& Sõne siduja
+ Sõne siduja
{} Sõne asendaja, C analoog.

Näide[muuda]

See näide näitab, kuidas on võimalik sõnesid ja arve omavahel siduda

   Sub Main()
       Dim a As String = "Eile olin "
       Dim b As String = ", aga täna olen "
       Dim c As Integer = 18
       Dim Teade As String = a & c & b & c + 1 & "."
       Console.WriteLine(Teade)
       Console.Read()
   End Sub

Konsooli tuleb teade: "Eile olin 18, aga täna olen 19."

Näide 2[muuda]

See näide näitab, kuidas on võimalik sõnes olevaid muutujaid asendada.

   Sub Main()
       Dim a As String = "Eile olin {1}, aga täna olen {2}.{0}"
       Dim c As Integer = 18
       Console.Write(a, vbNewLine, c, c + 1)
       Console.Read()
   End Sub

Seletus: Sõnes olev {0} asendatakse esimese muutujaga, mis talle järgneb. Sealjuures tähistab {} sulgudes sees olev number mitmenda talle järgneva muutujaga tuleb ennast asendada. Kusjuures pole tähtis, mitu korda ja kas üldse kasutatakse kõiki muutujaid. Veidi suurem vahe on näitega 1 see, et nüüd kasutatakse reavahetuseks konstanti vbNewLine. Asendusmuutujaks vormistatakse ala, mis järgneb sõnele ja on komaga eraldatud talle eelnevatest asendusmuutujatest. 'NB: Konsooli tuleb teade:

"Eile olin 18, aga täna olen 19."

Võrdeoperaatorid[muuda]

Võrdeoperaatorite abil võrreldakse võrratuse operande ja tagastatakse loogiline väärtus, mis võib olla ka tõene või väär. Seda sümboliseerib tabel allpool:

Operaator

Kasutamine
= Võrdväärsus (mitte vähem ega rohkem)
<> Ebavõrdsus (vähem kui või rohkem kui)
< vähem kui
> rohkem kui
<= vähem kui või võrdväärne
>= rohkem kui või võrdväärne

Loogilised ja bitioperaatorid[muuda]

Loogilised operaatorid võrdlevad kahendväärtuseid ja tagastavad kahendväärtuse (tõene või väär). Lühidalt: loogilised operaatorid on väärtusedhoidjad, mis võivad tagastada sündmuse või tehte kohta tema loogilise tehte väärtuse, kas tõene või väär. Järgnev tabel iseloomustab neid.

Operaator

Kasutamine
Not Negatsioon [ Mitte ]
And Konjunktsioon (sidesõna) [ Ja ]
AndAlso Konjunktsioon (sidesõna) [ JaVeel ]
Or Disjunktsioon (katkendlikkus) [ Või ]
OrElse Disjunktsioon (katkendlikkus) [ VõiVeel ]
XOr Disjunktsioon (katkendlikkus) [ XVeel]