Data Type Changes Integer
Integer Type VB.NET CLR Type 8-bit Integer Byte System.Byte
16-bit Integer Short System.Int16 32-bit Integer Integer System.Int32
64-bit Integer Long System.Int64 Boolean
A Boolean variable can be assigned one of the two states viz. True or False. In VB.NET, when numeric types are converted to Boolean values, 0 becomes False and
all other values become True. When Boolean values are converted to Integer values, True maps to -1 and False maps
to 0. String
To be inline with other .NET languages, VB.NET has updated string length declaration. In VB.NET, you cannot declare a string to have a fixed length. You must declare the
string without a length. When a value gets assigned to the string, the length of the value determines the length of the string.
5.4 Control Statements
VB.Net has statements such as If .. Then ..else and Select …. Case, which help you to conditionally execute program.
VB.Net provides you with various looping statements, such as Do… Loop, While…. End While, and For… Next.
1. The If….Then….Else…End if Statement
Consider a student marks and grade evaluation. For Marks above 75 the grade is ‘A’ and for below 75 is ‘B’. In this situation when you need to execute some code based on some
condition, you can make use of, If…then…else…end if. The Cultural syntax normally used is as follows:
If condition Then
Executable statements when the condition is True
Else
Executable statements when the Condition is False
End If OR using Elseif for Advanced Decision making
If condition Then
Executable statements
ElseIf condition Then
Executable statements
End If
Single if can have multiple else with conditions, as mentioned above in elseif format and finally a single End If for the main If condition.
Nesting IF…Then Constructs If condition Then
If condition2 Then Executable statements when the condition2 is TRUE
Else Executable
Statements End if
Else
Executable statements
End If
One important thing to keep in mind when nesting IF…Then constructs is that you must have corresponding End If statement for every IF ..Then statement, unless the If then statement executes only one statement and that statement appears on the same line as
If…Then
2. The Select…Case StatementEvaluating an Expression for Multiple Values The Select…Case Statement is similar to If…Else…End if. The only difference between
two is that If and elseif can evaluate different expressions in each statement, but the Select statement can evaluate only one expression.
The drawback of IF...Then construct is that it isn’t capable of handling a decision situation without a lot of extra work. One such situation is when you have to perform
different actions based on numerous possible values of an expression, not just True or False. For instance performing actions based on Students Marks.
If intmarks 35 Then
……. Elseif intmarks 50 then
……
Elseif intmarks65 then …..
Elseif intmarks75 then …
Else ….
End If As you see the structure can be a bit hard to read and if the conditions increase you may
end up writing a confusing and an unreadable piece of Code The Select uses the result of an expression to execute different set of statements.
The syntax for the Select…Case Statement is as follows:
Select Case [expression] Case [expression list]
Executable statements.
Case Else
Executable statements. Exit Select - to exit from the select
End Select
Note: Case Else is used to define the code that executes only when the expression doesn’t evaluate to any of the values in Case Statements .Use of Case Else is optional
Lets see the same example as above but this time with Select Case
Select Case intmarks Case Is 35
Executable statements Case Is 50
Executable statements Case Is65
Executable statements Case Is 75
Executable statements Case Else
Executable statements End Select
Evaluating More than one possible Value in a Case Statement Select Case helps you to use some more advanced expression comparisons. Like,you can
specify multiple comparisons in a Single Case statement by just using comma. Lets see how it does
Select Case strColor
Case Is=”Red”,”Blue”,”Magenta” ‘Color is a Dark Shade
Case Is =”Cream”,”white” ‘Color is a Cool Shade
End Select
Another comparison expression used is keyword To, Visual Basic.NET evaluates the expression and finds out whether it is in the range mentioned and if yes the Statement is
executed. Please note that when using To, you can’t include Is = as you can with the simple expression
Select Case intmarks Case 1 to 35
‘Executable statements
Case 36 to 50 ‘Executable
Statements End Select
3. For…Next Statement
The For…Next Statements are used repeat a set of statements for specific number of times.
The
syntax for the For…Next Statements is as follows: For counter = start value to end value [Step Value]
Executable Statements Exit For
Next [counter]
Counter is any numeric value. Start value is the initial value of the counter.
End value is the final value of the counter. Step Value is the value by which the counter is incremented. It can be positive or
negative. The default value is 1. Exit For is used to exit the For…Next loop at any time. When Exit for is encountered
,the execution jumps to the statement following Next Next is the statement the marks the end of the For statement. As soon as the program
encounters the Next statement, the step value is added to the counter and the next iteration of the loop takes place.
Dim intctr as Integer
For intctr=1 to 100 Debug.WriteLineintctr
Next intctr
This routine starts a loop with a For statement after a variable intctr is declared. This loop initializes intctr to 1 and then prints 1 through 100 to the output window. It prints in steps
of 1 as Step has been omitted here, so the default is 1 Example of use of STEP in For....Loop.
Let us write a table of 2 using step in for loop. Add a label with name it as lbtables and make it bit bigger on the screen.
Dim j = 1 For i = 2 To 20 Step 2
Me.lbtables.Text = Me.lbtables.Text 2 X j.ToString = i.ToString vbCrLf
j = j + 1 Next
Output:
2 X 1 = 2 ..
.. ..
.. ..
… 2 X 10 = 20
An Example of Nested For loop. Let us write a small code to display a structure of stars ‘’ in triangle format.
Let us have a label with name stars. Increase the height of the label to get a clear view of the image.
Dim star As String Dim i, j As Integer
For i = 0 To 5 First loop to count the rows
For j = 0 To i Second loop to count the columns star = star
Next Me.stars.Text = Me.stars.Text star vbCrLf To print
star = Next
4. For Each…Next Statement The For Each…Next Statement is used to repeat a set of statements for each element in
an array or collection. The For Each…Next statement is executed if there is at least one item in an array of
collection. The Loop repeats of each element in an array or collection.
The syntax for the For Each…Next statement as follows:
For Each Component In Set
Executable statements
Next
Component is the variable used to refer to the elements of an array or a collection. Set refers to an array or any collection object. e.g.
Dim weeks As String = {Monday, Tuesday, Wednesday, Thursday,_ Friday, Saturday, Sunday}
Dim eachday As String For Each eachday In weeks
MsgBoxeachday Next
An example for using for each element in a collection of string into a single string element.
Each element of array which is of type string is read from the collection and stored into the single string type object.
5. While…End Statement
The While…End Statement is used to repeat set of executable statements as long as the condition is true.
The
syntax for the While…End statement is as follows: While Condition
Executable Statements
End While
In this if the condition is satisfied then the statements are executed. Else it will not
enter the While condition at all.
6. Do...Loop Statement
The Do…Loop Statement is similar to While…End. Here we have two types of formatting the loop.
a Do While Until Condition Executable Statements Loop b Do Executable Statements Loop WhileUntil Condition
The Difference is in a The loop will be executed if the condition is satisfied, but in b The Loop will be executed at least once even if the condition does not satisfy.
Do While Expression [Statements]
Loop Do Until Expression
[Statements] Loop
Note: For VB programmers While Wend is not supported it is While… End now
A Complete Example with set of control statements. We will create a VB.Net application, which will accept students name and its grade.
Depending up the type of grade it will add remarks.
txtsummary.Text = Dim value, ctr As Integer
Accept a number from the user value = CIntInputBoxEnter the number of students
Check if the validity of the number If value = 0 Then
MsgBoxEnter details of at least one student, Error End If
Dim arrNamevalue As String Dim sGrade As String
Dim arrRemarksvalue As String While ctr value
Accept the name of the students
arrNamectr = InputBoxEnter the name of the Student_ ctr + 1, Enter Details
Accept the grade of the Student sGrade = InputBoxEnter the grade of the student
_ABCDF, Grade Details Assign remarks to students
Select Case UCasesGrade Case A
arrRemarksctr = Excellent Case B
arrRemarksctr = Good Case C
arrRemarksctr = Fair Case D
arrRemarksctr = Poor Case F
arrRemarksctr = Fail Case Else
MsgBoxIncorrect value entered , _ MsgBoxStyle.Critical
Exit Sub To come out of the program End Select
ctr = ctr + 1 End While
Display the summary in the text box For ctr = 0 To value - 1
If txtsummary.Text = Then If LCasearrRemarksctr = fail Then
txtsummary.Text = arrNamectr has failed _ in
exams vbCrLf
Else txtsummary.Text = arrNamectr s performance is_
arrRemarksctr vbCrLf End If
Else If LCasearrRemarksctr = fail Then
txtsummary.Text = txtsummary.Text arrNamectr _ has failed in exams vbCrLf
Else txtsummary.Text = txtsummary.Text arrNamectr _
s performance is arrRemarksctr _ vbCrLf End If
End If Next
5.5 Arrays