在C#和VB.Net中启动数组索引

Sun*_*nil 7 c# vb.net arrays

看看下面的代码.,

C#

 string[] testString = new string[jobs.Count];
Run Code Online (Sandbox Code Playgroud)

相当于VB.Net

Dim testString() As String = New String(jobs.Count - 1) {}
Run Code Online (Sandbox Code Playgroud)

为什么在创建新数组时在vb.net中使用'jobs.Count - 1'代替'jobs.Count'?

fix*_*gon 13

在VB.NET中,数组声明中的数字表示"max index",但在C#中表示"元素数"


Joh*_*mse 6

在C#中,数组包含您提供的元素数:

string[] array = new string[2]; // will have two element [0] and [1]
Run Code Online (Sandbox Code Playgroud)

在VB.NET中,数组具有您提供的元素数量加上一个(您指定最大索引值):

Dim array(2) As String // will have three elements (0), (1) and (2)
Run Code Online (Sandbox Code Playgroud)