VBiB/ACCB.net - Visual Basic in België | .net Ineta User Group  
(login to hide)
Hoofdmenu

Advertenties

Het Computer Winkeltje HCW


Evenementen

Tips en tricks
U bevindt zich > Tips en Tricks > VB .net > Algemene tips > Componenten > And vs AndAlso
Ik wil een tip ingeven

Tip: And vs AndAlso
ArComAr - 22 Sep 2007 - 19:35

Sinds vb2005 bestaat er een "nieuwe" and namelijk AndAlso. Deze AndAlso vervangt niet de and functie, maar is een andere vorm van een and. Het verschil zit hem in het feit dat statements die volgen na de AndAlso niet worden uitgevoerd wanneer het statement (of statements) voor de AndAlso niet voldaan zijn. Bij een gewone And functie worden alle statements na gekeken zelfs als de voorgaande niet voldaan zijn. Dit resulteert in een onnodige vertraging die je bij een AndAlso niet gaat hebben. Wat ook een feit is, is dat wanneer je geen AndAlso gebruikt, dat je dan meerdere if-statements in elkaar gaat moeten nesten. Het voorbeeld hieronder toont hiervan een voorbeeld. Wanneer num een string is, dan zal het bij de eerste if geen probleem geven. Wanneer er ipv de AndAlso een and staat, dan ga je een probleem krijgen bij option strict on. Wanneer je de "cint(num)" vervangt door "cint(val(num))" , dan ga je ook geen probleem hebben omdat je dan de value neem van num, en dit is 0 als num niet numeriek is. Je zit dus dat het met de AndAlso veel korter geschreven kan worden.
Code:


dim num as string = textbox1.text

if isnumeric(num) andalso cint(num) > 5
    MessageBox.show("Groter als 5")
else
    MessageBox.show("Geen getal of niet groter dan 5")
end if


'zonder andAlso:

Dim num As String = TextBox1.Text

If IsNumeric(num) Then
    If CInt(num) > 5 Then
        MessageBox.Show("Groter als 5")
    Else
        MessageBox.Show("Niet groter dan 5")
    End If
Else
    MessageBox.Show("Geen getal of niet groter dan 5")
End If

3020 x gelezen

Commentaar
ArComAr - 30 Nov 2007 - 13:36

OrElse doet net hetzelde bij een else statement. Als het eerste true is, dan worden de rest van de statements in die for niet meer bekeken.

U dient ingelogd te zijn om commentaar te posten.
 

Er zijn in totaal 102 tips gepost.

 

 
Postnuke - ADODB Database - PHP 4/5 - pnPhpBB2 - Hosting bij Openminds
Met dank aan Jürgen voor de jarenlange inzet van visualbasic.be (anno 21-12-2000)
vbib.be gestart op 1/03/06 (extra vanaf 1/09: vbnet.be en vbdotnet.be)
VBiB is gerelateerd met wintips.be

Nieuwsbrief RSS Feed: backend.php