Ternary Operator in VB.NET
Join the DZone community and get the full member experience.Join For Free
We all know about the ternary operator in C#.NET. I am a big fan of the ternary operator and I like to use it instead of using IF..Else. Those who don’t know about ternary operator please go through below link.
Here you can see ternary operator returns one of the two values based on the condition. See following example.
bool value = false; string output=string.Empty; //using If condition if (value==true) output ="True"; else output="False"; //using tenary operator output = value == true ? "True" : "False";
In the above example you can see how we produce same output with the ternary operator without using If..Else statement.
Recently in one of the project I was working with VB.NET language and I was eager to know if there is a ternary operator equivalent there or not. After searching on internet I have found two ways to do it. IF operator which works for VB.NET 2008 and higher version and IIF operator which is there since VB 6.0.
So let’s check same above example with both of this operators. So let’s create a console application which has following code.
Module Module1 Sub Main() Dim value As Boolean = False Dim output As String = String.Empty ''Output using if else statement If value = True Then output = "True" Else output = "False" Console.WriteLine("Output Using If Loop") Console.WriteLine(output) output = If(value = True, "True", "False") Console.WriteLine("Output using If operator") Console.WriteLine(output) output = IIf(value = True, "True", "False") Console.WriteLine("Output using IIF Operator") Console.WriteLine(output) Console.ReadKey() End If End Sub End Module
As you can see in the above code I have written all three-way to condition check using If.Else statement and If operator and IIf operator. You can see that both IIF and If operator has three parameter first parameter is the condition which you need to check and then another parameter is true part of you need to put thing which you need as output when condition is ‘true’. Same way third parameter is for the false part where you need to put things which you need as output when condition as ‘false’.
Now let’s run that application and following is the output as expected.
That’s it. You can see all three ways are producing same output. Hope you like it. Stay tuned for more..Till then Happy Programming.
Published at DZone with permission of Jalpesh Vadgama, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.