VB.Net其它運算子

2019-10-16 23:02:32

VB.Net支援其他重要的運算子。

  • AddressOf - 返回過程的地址。
    範例:

    AddHandler Button1.Click,
    AddressOf Button1_Click
    
  • Await - 它被應用於非同步方法或lambda表示式中的運算元,以掛起方法的執行,直到等待完成的任務完成。
    範例:

    Dim result As res= Await AsyncMethodThatReturnsResult()
    Await AsyncMethod()
    
  • GetType - 它為指定的型別返回一個Type物件。 Type物件提供有關型別的資訊,例如屬性,方法和事件。
    範例:

    MsgBox(GetType(Integer).ToString())
    
  • 函式表示式 - 它宣告了定義函式lambda表示式的引數和程式碼。
    範例:

    Dim add5 = Function(num As
    Integer) num + 5
    'prints 10'
    Console.WriteLine(add5(5))
    
  • If - 它使用短路評估來有條件地返回兩個值之一。 If運算子可以用三個引數或兩個引數來呼叫。
    範例:

    Dim num = 5
    Console.WriteLine(If(num >= 0, "Positive", "Negative"))
    

範例

以下範例演示了一些這些運算子,檔案:misc_operators.vb -

Module misc_operators
   Sub Main()
      Dim a As Integer = 21
      Console.WriteLine(GetType(Integer).ToString())
      Console.WriteLine(GetType(Double).ToString())
      Console.WriteLine(GetType(String).ToString())
      Dim multiplywith5 = Function(num As Integer) num * 5
      Console.WriteLine(multiplywith5(5))
      Console.WriteLine(If(a >= 0, "Positive", "Negative"))
      Console.ReadLine()
   End Sub
End Module

執行上面範例程式碼,得到以下結果 -

F:\worksp\vb.net\operators>vbc misc_operators.vb
F:\worksp\vb.net\operators>misc_operators.exe
System.Int32
System.Double
System.String
25
Positive