[VB.NET]VB 10.0 Array Literals

VB 10.0 Array Literals

Introduction

 

Array Literals功能簡單的說就是對區域型別推斷的加強,讓區域型別推斷能支援陣列型態。

 

Support

  • VB 10.0 or latter

 

Array Literals

在VB 9.0(含)以前,對於集合類別的區域型別推斷我們可以寫成如下這樣:

Dim intAttay = New Integer() {1, 2, 3}

 

在VB 10.0以後我們可以更為簡化

Dim intArray = {1, 2, 3}

 

編譯器會自動偵測等號右邊的型態,並用以設定等號左邊的變數型態

 

    Dim a = {1, 2, 3}             'infers Integer()
    Dim b = {1, 2, 3.5}          'infers Double()
    Dim c = {"1", "2", "3"}     'infers String()
    Dim d = {1, "123"}          'infers Object() (warning with Option Strict On)

 

 

也可以用來設定多維陣列或是不規則陣列

    Dim e = {{1, 2, 3}, {4, 5, 6}}         'infers Integer(,)
    Dim f = {({1, 2, 3}), ({4, 5, 6})}     'infers Integer()() (jagged array)