Eni*_*ity 12
您可以使用LINQ以非常简洁的代码生成结果:
Dim a2 = a.Skip(1).ToArray();
Run Code Online (Sandbox Code Playgroud)
你可能有批评者说这很慢,你应该使用Array.Copy:
Dim a2(a.Length - 2) as Integer
Array.Copy(a, 1, a2, 0, a.Length - 1)
Run Code Online (Sandbox Code Playgroud)
但是,我使用一个包含1,000,000个元素的整数数组测试了两种方法的时序,发现LINQ花费了29毫秒,直接拷贝花了3毫秒.除非你用gazilions元素进行某种疯狂的数学运算,否则LINQ很好,而且更具可读性.
这是在 vb.net 中删除数组第一个元素的一种方法。
dim a(n)
...
for i = 1 to ubound(a)
a(i-1) = a(i)
next i
redim preserve a(ubound(a)-1)
Run Code Online (Sandbox Code Playgroud)
您可以为此创建一个函数来删除数组的任意元素(有一个用于 for 循环的初始值的参数)。