Как объявить массив встроенным в VB.NET - PullRequest
55 голосов
/ 15 ноября 2008

Я ищу VB.NET эквивалент

var strings = new string[] {"abc", "def", "ghi"};

Ответы [ 6 ]

73 голосов
/ 15 ноября 2008
Dim strings() As String = {"abc", "def", "ghi"}
42 голосов
/ 15 ноября 2008

Есть много правильных ответов на этот вопрос уже сейчас, но вот версия "научить парня ловить рыбу".

Сначала создайте крошечное консольное приложение на C #:

class Test
{
    static void Main()
    {
        var strings = new string[] {"abc", "def", "ghi"};
    }
}

Скомпилируйте, сохраняя отладочную информацию:

csc /debug+ Test.cs

Запустите Отражатель и откройте метод Main - затем декомпилируйте в VB. В итоге вы получите:

Private Shared Sub Main()
    Dim strings As String() = New String() { "abc", "def", "ghi" }
End Sub

Итак, мы получили тот же ответ, но фактически не знали VB. Это не всегда работает, и есть много других инструментов конвертации, но это хорошее начало. Определенно стоит попробовать в качестве первого порта захода.

9 голосов
/ 19 апреля 2012

В более новых версиях VB.NET, которые поддерживают вывод типов, эта более короткая версия также работает:

Dim strings = {"abc", "def", "ghi"}
5 голосов
/ 15 ноября 2008

Не VB парень. Но может быть что-то подобное?

Dim strings = New String() {"abc", "def", "ghi"}

(примерно на 25 секунд позже ...)

Совет: http://www.developerfusion.com/tools/convert/csharp-to-vb/

5 голосов
/ 15 ноября 2008
Dim strings As String() = New String() {"abc", "def", "ghi"}
4 голосов
/ 15 ноября 2008

Dim strings As String() = {"abc", "def", "ghi"}

...