Using Select Case in VB.net
By: Steven Holzner in VB.net Tutorials on 2008-11-25
You have to get a value from the user and respond in several different ways, but you're not looking forward to a long and tangled series of If-Then-Else statements. What can you do?
If your program can handle multiple values of a particular variable and you don't want to stack up a lot of If Else statements to handle them, you should consider Select Case. You use Select Case to test an expression, determine which of several cases it matches, and execute the corresponding code. Here's the syntax:
Select Case testexpression
[Case expressionlist-n
[statements-n]]-
[Case Else
[elsestatements]]
End Select
You use multiple Case statements in a Select statement, each specifying a different value to test against textexpression, and the code in the Case statement that matches is executed.
Here's an example using Select Case. In this example, I'm modifying the code from the previous topic to use Select Case instead of If-Then. Note that I'm also using the Select Is keyword, which you can use like this: Case Is condition, allowing you to test testexpression against some condition (such as Case Is > 7). You can also test testexpression against a range of values with the To keyword (such as Case 4 To 7). And Case Else can handle values we don't explicitly provide code for-it's just like the Else statement in an If-Then statement, because the code in it is executed if no other case matches. Here's the code:
Module Module1 Sub Main() Dim intInput As Integer System.Console.WriteLine("Enter an integer-") intInput = Val(System.Console.ReadLine()) Select Case intInput Case 1 System.Console.WriteLine("Thank you.") Case 2 System.Console.WriteLine("That's fine.") Case 3 System.Console.WriteLine("OK.") Case 4 To 7 System.Console.WriteLine("In the range 4 to 7.") Case Is > 7 System.Console.WriteLine("Definitely too big.") Case Else System.Console.WriteLine("Not a number I know.") End Select End Sub End Module
Add Comment
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
- Your name, rating, website address, town, country, state and comment will be publicly displayed if entered.
- Aside from the data entered into these form fields, other stored data about your comment will include:
- Your IP address (not displayed)
- The time/date of your submission (displayed)
- Your email address will not be shared. It is collected for only two reasons:
- Administrative purposes, should a need to contact you arise.
- To inform you of new comments, should you subscribe to receive notifications.
- A cookie may be set on your computer. This is used to remember your inputs. It will expire by itself.
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
- Although the administrator will attempt to moderate comments, it is impossible for every comment to have been moderated at any given time.
- You acknowledge that all comments express the views and opinions of the original author and not those of the administrator.
- You agree not to post any material which is knowingly false, obscene, hateful, threatening, harassing or invasive of a person's privacy.
- The administrator has the right to edit, move or remove any comment for any reason and without notice.
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
- Data Science
- Android
- React Native
- AJAX
- ASP.net
- C
- C++
- C#
- Cocoa
- Cloud Computing
- HTML5
- Java
- Javascript
- JSF
- JSP
- J2ME
- Java Beans
- EJB
- JDBC
- Linux
- Mac OS X
- iPhone
- MySQL
- Office 365
- Perl
- PHP
- Python
- Ruby
- VB.net
- Hibernate
- Struts
- SAP
- Trends
- Tech Reviews
- WebServices
- XML
- Certification
- Interview
categories
Related Tutorials
Changes in Controls from VB6 to VB.net
Unstructured Exception Handling in VB.net
Structured Exception Handling in VB.net
Creating Sub Procedures in VB.net
Passing a Variable Number of Arguments to Procedures in VB.net
Specifying Optional Arguments with default values in Procedures in VB.net
Preserving a Variable's Values between Procedure Calls in VB.net
Throwing an Exception in VB.net
Comments