Välj Case Statement i VB.Net med exempel

⚡ Smart sammanfattning

"Select Case" i VB.Net är en villkorlig sats som testar ett uttryck mot en lista med värden och kör det matchande blocket, vilket ger en renare och mer läsbar förgrening än långa "If Then ElseIf"-kedjor.

  • 🔍 Syfte: Testa ett uttryck mot många värden och kör matchande fall.
  • 🧩 Syntax: Varje gren börjar med Case; blocket fortsätter till End Select.
  • 🔢 Flera matcher: Ett fall accepterar kommalistor, Till-intervall och Är-jämförelser.
  • 🧩 Annat fall: Case Else körs bara när inget annat Case matchar värdet.
  • 🔤 Skiftlägeskänslighet: ToLower och ToUpper normaliserar text så att matchning ignorerar versaler och gemener.
  • 🤖 AI-hjälp: GitHub Copilot och IntelliCode slutför blocken för att välja gemener och skiftlägen medan du skriver.

Välj ärendeuttalande i VB.Net

Vad är Select Case i VB.Net?

Välj Fall är ett villkorligt uttalande som hjälper dig att testa en variabel för likhet mot en uppsättning värden. Varje värde hänvisas till som ett fall, och en variabel som slås på bör kontrolleras för alla valda fall.

Select Case-satsen ger dig ett enkelt sätt att testa innehållet i en variabel. Den är dock endast lämplig att använda när en variabel i fråga endast har ett begränsat antal alternativ.

Syntax för Select Case Statement i VB.Net

Select Case-satsen deklareras i VB.Net med följande syntax:

Select [ Case ] your_expression
   [ Case expression_list
      [ statement(s) ] ]
   [ Case Else
      [ else statement(s) ] ]
End Select

Låt oss beskriva parametrarna som används i syntaxen:

  • ditt_uttryck: detta betecknar ett uttryck som evaluerar till ett av de elementära Datatyper stöds i Microsoft VB.Net.
  • expression_list: uttryckssatser som anger matchningsvärdena för uttrycket. För flera satser, separera dem med ett kommatecken (,).
  • uttalande: satser som följer Case och de körs efter att select-uttrycket har matchat någon sats i expression_list.
  • andra uttalanden: satser som följer Case Else och körs när select-uttrycket inte matchar någon av satserna i expression_list för någon Case-sats.

VB.Net Select Case Statement Program Exempel

Låt oss använda ett exempel för att visa hur man använder Select Case-satsen i VB.Net:

Steg 1) Skapa först en ny konsolapplikation.

Steg 2) Använd följande kod:

Module Module1
    Sub Main()
        Dim name As String
        name = "Guru99"
        Select Case name

            Case "John"
                Console.WriteLine("Hello John")

            Case "Guru99"
                Console.WriteLine("Hello Guru99")

            Case "Alice"
                Console.WriteLine("Hello Alice")

            Case "Joel"
                Console.WriteLine("Hello Joel")

            Case Else
                Console.WriteLine("unknown name")

        End Select
        Console.WriteLine("VB.NET is easy!")
        Console.ReadKey()
    End Sub
End Module

Steg 3) Klicka på Start-knappen i den övre raden för att köra programmet. Det kommer att ge dig följande resultat:

VB.Net Select Case-programutskrift Hej Guru99

Här är en skärmdump av koden som vi har använt:

VB.Net Select Case-exempelkod som visas i Visual Studio

Förklaring till Code:

  1. Skapa en modul som heter Module1.
  2. Start av huvuddelproceduren.
  3. Skapa en strängvariabel med namnet namn.
  4. Tilldela ett värde på Guru99 till variabelnamnet.
  5. Värdet på ett variabelnamn kommer att användas för att utföra jämförelser med de olika fallsatserna för att hitta en matchning.
  6. Om värdet på ett variabelnamn är John.
  7. Text att skriva ut på konsolen om ovanstående fall är sant/matchat.
  8. Om värdet på ett variabelnamn är Guru99.
  9. Text att skriva ut på konsolen om ovanstående fall är sant/matchat.
  10. Om värdet på ett variabelnamn är Alice.
  11. Text att skriva ut på konsolen om ovanstående fall är sant/matchat.
  12. Om värdet på ett variabelnamn är Joel.
  13. Text att skriva ut på konsolen om ovanstående fall är sant/matchat.
  14. Om inget av ovanstående Case-satser är sanna/ matchas.
  15. Text som ska skrivas ut på konsolen om ovanstående fall är sant, det vill säga inget fall uttalande matchas.
  16. Slutet på Select-satsen.
  17. Detta uttalande kommer att skriva ut en del text på skärmen oavsett om ett ärendeuttalande matchades eller inte. Det kommer alltid att genomföras.
  18. Pausa konsolfönstret en stund och vänta på att en användare ska vidta åtgärder för att stänga det.
  19. Slut på det huvudsakliga underförfarandet.
  20. Slutet på modulen.

Exempelvis 2

Du kan också låta användaren skriva namnet och sedan fatta ditt beslut baserat på den inmatningen.

Steg 1) Skapa en ny konsolapplikation.

Steg 2) Använd följande kod:

Module Module1
    Sub Main()
        Console.Write("Enter your name: ")
        Dim name As String = Console.ReadLine()
        Select Case name

            Case "John"
                Console.WriteLine("Hello John")

            Case "Guru99"
                Console.WriteLine("Hello Guru99")

            Case "Alice"
                Console.WriteLine("Hello Alice")

            Case "Joel"
                Console.WriteLine("Hello Joel")

            Case Else
                Console.WriteLine("unknown name")

        End Select
        Console.WriteLine("VB.NET is easy!")
        Console.ReadKey()
    End Sub
End Module

Steg 3) Klicka på Start-knappen från den övre raden för att köra den. Det bör returnera följande:

VB.Net Select Case-konsolprompten ber om att ange ett namn

Steg 4) Skriv namnet Guru99 och tryck på enter-tangenten. Du bör få följande:

VB.Net Välj Case-utdata efter att användaren har angett Guru99

Här är en skärmdump av koden:

VB.Net Välj fallkodläsningsinmatning med Console.ReadLine

Förklaring till Code:

  1. Skapa en modul som heter Module1.
  2. Start av huvuddelproceduren.
  3. Skriver ut lite text på konsolen som instruerar användaren att ange sitt namn.
  4. Skapa en strängvariabel med namnet namn och uppmana användaren att ange ett värde för denna variabel på konsolen.
  5. Värdet på variabelnamnet kommer att användas för att utföra jämförelser med de olika fallsatserna för att hitta en matchning.
  6. Om värdet på variabelnamnet är John.
  7. Text att skriva ut på konsolen om ovanstående fall är sant/matchat.
  8. Om värdet på variabelnamnet är Guru99.
  9. Text att skriva ut på konsolen om ovanstående fall är sant/matchat.
  10. Om värdet på variabelnamnet är Alice.
  11. Text att skriva ut på konsolen om ovanstående fall är sant/matchat.
  12. Om värdet på variabelnamnet är Joel.
  13. Text att skriva ut på konsolen om ovanstående fall är sant/matchat.
  14. Om inget av ovanstående Case-satser är sanna/ matchas.
  15. Text som ska skrivas ut på konsolen om ovanstående fall är sant, det vill säga inget fall uttalande matchas.
  16. Slutet på Select-satsen.
  17. Detta uttalande kommer att skriva ut en del text på skärmen oavsett om ett ärendeuttalande matchades eller inte. Det kommer alltid att genomföras.
  18. Pausa konsolfönstret en stund och vänta på att en användare ska vidta åtgärder för att stänga det.
  19. Slut på det huvudsakliga underförfarandet.
  20. Slutet på modulen.

ToLower() och ToUpper() funktioner i VB.Net

Programsatsen Select Case är skiftlägeskänslig. Det betyder att guru99 behandlas som annorlunda än Guru99. Vi kan dock använda funktionerna ToLower() och ToUpper() för att hantera ärendet i ett ärende med denna sats.

Exempel på ToLower() och ToUpper() i VB.Net

Här är ett exempel på funktionerna ToLower() och ToUpper() i VB.Net:

Steg 1) Skapa en ny konsolapplikation.

Steg 2) Använd följande kod:

Module Module1
    Sub Main()
        Console.Write("Enter your name: ")
        Dim name As String = Console.ReadLine()
        Select Case name.ToLower()
		
            Case "john." 
                Console.WriteLine("Hello John")

            Case "guru99." 
                Console.WriteLine("Hello Guru99")

            Case "alice." 
                Console.WriteLine("Hello Alice")

            Case "joel." 
                Console.WriteLine("Hello Joel")

            Case Else
                Console.WriteLine("unknown name")

        End Select
        Console.WriteLine("VB.NET is easy!")
        Console.ReadKey()
    End Sub
End Module

Steg 3) Klicka på Start-knappen i det övre fältet för att köra koden. Du bör få följande utdata:

VB.Net ToLower-funktionens konsolutdata för Select Case

Steg 4) Skriv namnet Guru99 (G är versal) och tryck på enter-tangenten på tangentbordet. Du bör få följande:

VB.Net Välj gemener och versaler med ToLower som matchar versaler Guru99-ingång

Här är en skärmdump av koden:

VB.Net ToLower och ToUpper Välj Case-exempelkod

Förklaring till Code:

Code rad 5: Värdet på variabelnamnet kommer att användas för att utföra jämförelser med de olika Case-satserna för att hitta en matchning. Funktionen ToLower() säkerställer att alla namn som användaren skriver först konverteras till gemener innan utvärderingen av Case-satserna. Detta innebär att om användaren skriver Guru99, kommer den omedelbart att konverteras till guru99, varefter utvärderingen av Case-satserna görs. Om användaren skriver John, kommer den omedelbart att konverteras till john innan utvärderingen av Case-satserna görs.

Resten av koden samma som ovan.

Vanliga frågor

Lista värden med kommatecken (Fall 6, 7, 8), ange ett intervall med Fall 1 till 10, eller använd Fall är > 5.

Select Case testar ett uttryck mot många värden och läser det korrekt. Använd If Then ElseIf för orelaterade eller komplexa booleska villkor.

Nej. Endast det första matchande Case körs, sedan hoppar kontrollen över End Select. VB.Net behöver ingen Break-sats för att förhindra genombrott.

Case Else är standardgrenen och körs bara när inga andra Case-värden matchar. Den är valfri men hanterar oväntade värden på ett säkert sätt.

Uttrycket måste vara ett elementärt data typ såsom Boolean, Char, Date, Integer, Long, Double, Decimal, Objekt eller Sträng.

Ja. Placera ett komplett Select Case inuti ett Case-block i ett yttre. Det inre testet körs bara efter att de yttre matchningarna har träffat, men djup kapsling försämrar läsbarheten.

Ja. GitHub Copilot omvandlar en kommentar i vanlig engelska till ett komplett Select Case-block. Revatt fallen täcker alla förväntade värden.

Ja. Visual Studio 2026 parar ihop Copilot med IntelliCode för helradiga, kontextmedvetna ärendeslutföranden.

Sammanfatta detta inlägg med: