Udostępnij za pośrednictwem


Jeżeli...Następnie...Instrukcja else (Visual Basic)

Warunkowe wykonanie grupy instrukcji w zależności od wartości wyrażenia.

' Multiple-line syntax:
If condition [ Then ]
    [ statements ]
[ ElseIf elseifcondition [ Then ]
    [ elseifstatements ] ]
[ Else
    [ elsestatements ] ]
End If

' Single-line syntax:
If condition Then [ statements ] [ Else [ elsestatements ] ]

Części

  • condition
    Wymagane.Wyrażenie.Musi być True lub False, lub do typu danych, który jest niejawnie do Boolean.

    Jeśli wyrażenie jest NullableBoolean zmienna, która daje w wyniku nic nie, warunek jest traktowany tak, jakby wyrażenie nie jest Truei Else bloku jest wykonywany.

  • Then
    Wymagany w składni pojedynczej linii; Opcjonalnie w składni wielu linii.

  • statements
    Opcjonalne.Jeden lub więcej następujących instrukcji If...Then , są wykonywane, jeśli condition daje w wyniku True.

  • elseifcondition
    Wymagany, jeżeli ElseIf jest obecny.Wyrażenie.Musi być True lub False, lub do typu danych, który jest niejawnie do Boolean.

  • elseifstatements
    Opcjonalne.Jeden lub więcej następujących instrukcji ElseIf...Then , są wykonywane, jeśli elseifcondition daje w wyniku True.

  • elsestatements
    Opcjonalne.Jeden lub więcej instrukcji, które są wykonywane, jeśli nie poprzedniej condition lub elseifcondition wyrażenie ma True.

  • End If
    Kończy się If...Then...Else block.

Uwagi

Składnia wielu linii

When an If...Then...Else napotkania instrukcji condition jest badany.Jeśli condition jest True, instrukcje po Then są wykonywane.Jeśli condition jest False, każdy ElseIf instrukcji (jeśli istnieją) jest oceniane w kolejności.Gdy Trueelseifcondition zostanie znaleziony, instrukcji, bezpośrednio po skojarzonej ElseIf są wykonywane. Jeśli nie elseifcondition daje w wyniku True, lub jeśli istnieją nie ElseIf instrukcji, instrukcje po Else są wykonywane.Po wykonaniu następujących instrukcji Then, ElseIf, lub Else, wykonanie kontynuuje następujące oświadczenie End If.

ElseIf i Else klauzule są opcjonalne.Masz tyle ElseIf klauzule jako użytkownik chce If...Then...Else instrukcji, ale nie ElseIf klauzula może pojawić się po Else klauzuli.If...Then...Else instrukcji można zagnieżdżać wewnątrz siebie.

W składni wielu linii If instrukcja musi być instrukcja tylko w pierwszym wierszu.ElseIf, Else, I End If instrukcji może być poprzedzone tylko etykietę wiersza.The If...Then...Else musi się kończyć bloku End If instrukcji.

PoradaPorada

Wybierz...Instrukcja Case (Visual Basic) Może być bardziej przydatne podczas oceny pojedyncze wyrażenie, które ma kilka możliwych wartości.

Składnia pojedynczej linii

Dla badań krótkie, proste, można używać składni pojedynczej linii.Składnia wielu linii zapewnia większą strukturę i elastyczność i jest zwykle łatwiejsze do odczytu, utrzymania i debugowania.

Co za tym idzie Then słów kluczowych jest badane do określenia, czy instrukcja jest pojedynczej linii If.Jeśli pojawi się coś innego niż komentarz po Then w tym samym wierszu, instrukcja jest traktowany jako pojedynczej linii If instrukcji.Jeśli Then jest nieobecny, musi być początkiem wielu linii If...Then...Else.

W składni pojedynczej linii może mieć wiele instrukcje wykonywane w wyniku If...Then decyzji.Wszystkie instrukcje muszą być w tej samej linii i być rozdzielone dwukropkiem.

Przykład

Poniższy przykład ilustruje użycie składni wielu linii If...Then...Else instrukcji.

        Dim count As Integer = 0
        Dim message As String

        If count = 0 Then
            message = "There are no items."
        ElseIf count = 1 Then
            message = "There is 1 item."
        Else
            message = "There are " & count & " items."
        End If

Poniższy przykład zawiera zagnieżdżone If...Then...Else instrukcji.

Private Function CheckIfTime() As Boolean
    ' Determine the current day of week and hour of day.
    Dim dayW As DayOfWeek = DateTime.Now.DayOfWeek
    Dim hour As Integer = DateTime.Now.Hour

    ' Return True if Wednesday from 2 to 4 P.M.,
    ' or if Thursday from noon to 1 P.M.
    If dayW = DayOfWeek.Wednesday Then
        If hour = 14 Or hour = 15 Then
            Return True
        Else
            Return False
        End If
    ElseIf dayW = DayOfWeek.Thursday Then
        If hour = 12 Then
            Return True
        Else
            Return False
        End If
    Else
        Return False
    End If
End Function

Poniższy przykład ilustruje użycie składni pojedynczej linii.

If A > 10 Then A = A + 1 : B = B + A : C = C + B

Zobacz też

Informacje

# If...... A następnie # Else dyrektyw

Choose

Wybierz...Instrukcja Case (Visual Basic)

Switch

Jeśli Operator (Visual Basic)

Koncepcje

Zagnieżdżonych struktur kontroli (Visual Basic)

Decyzja struktur (Visual Basic)

Operatory logiczne i operatory w języku Visual Basic