Dim i as Long, arr(5) As Long
for i = 1 to 6
arr(i-1) = i-1
next
console.writeLine(arr(LBound(arr)+5) + arr(UBound(arr)-2))
我理解输出为8,但是有人可以解释为什么输出为8,Lbound和UBound,这种类型的问题出现在我的考试中,我在解决这个问题时遇到了一些问题。
非常感谢
答案 0 :(得分:2)
UBOUND在VB中表示“上边界”。它返回数组的最后一项(上边界)的序列号。 LBOUND用于下边界或第一项。
由于VB.Net可以更轻松地使用选项来执行相同的操作,因此我最近通常不使用它们。
您的循环将构建此数组
arr(0)=0
arr(1)=1
arr(2)=2
arr(3)=3
arr(4)=4
arr(5)=5
现在LBound(arr)
返回0,而ubound(arr)
返回5。
现在,如果您要设置的数组是
arr(0)=10
arr(1)=11
arr(2)=12
arr(3)=13
arr(4)=14
arr(5)=15
然后LBound(arr)
仍返回0,而ubound(arr)
返回5。