Ternary operator in VB.NET

We all know about Ternary operator in C#.NET. I am a big fan of 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.

http://msdn.microsoft.com/en-us/library/ty67wk28(v=vs.80).aspx

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.

Ternary Operator in Vb.NET

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.

Shout it

kick it on DotNetKicks.com

1 comment:

  1. India
    is now the hub of Information Technology or IT. There has never been a time
    when India was seen as an industrial hub. It is due to the boom and bloom of
    Information Technology that India is gaining a foothold in the global markets.
    And this is a good thing because this will only increase giving India a
    position as a global leader. It feels proud to see so many technological
    inventions being made by Indians like you. Salute!


     


    Divya Bhaskar


    MyGrahak.com

    ReplyDelete

Your feedback is very important to me. Please provide your feedback via putting comments.