【发布时间】:2014-12-22 04:14:29
【问题描述】:
在 Visual Basic 中,我有一个从 1 到 100 的数组。然后我有一个输入框,您可以在其中输入数字(例如:1 5 6 9 10 20 等),应用程序在空格和输入之间拆分数字它们作为新数组中的项目。如何获取 1 到 100 数组中的 VALUES 和输入数组中的 VALUES 并进行比较,如果它们发生冲突(例如,输入是否与 1 到 100 相同)然后做点什么?
1到100数组的代码:
Dim baseArray(0 To 100) As Integer
For a = 0 To UBound(baseArray)
no += 1
baseArray(a) = 0 + no
Next a
分割输入数组的代码:
Dim givenNoArray() As String
givenNo = input_numbers.Text
givenNoArray = givenNo.Split(" ")
For i = 0 To UBound(givenNoArray)
Debug.Print(givenNoArray(i))
Next i
所以一切正常。只是比较它们是我的问题。
【问题讨论】:
-
要比较具有相同索引值的元素,您只需要一个循环并使用 If 语句查看 baseArray(index) 与 givenNoArray(index)。如果要将 givenNoArray 中的每个元素与 baseArray 中的每个元素进行比较,则需要两个循环 - 一个称为嵌套循环,因为它存在于另一个循环中。外层循环遍历 givenNoArray 中的每个元素,内层循环遍历 baseArray 中的每个元素。然后在 if 语句中查看 givenNoArray(outer_index) 与 baseArray(inner_index)
-
所以 Do While 循环可以工作吗?
-
看起来你将在两个数组中都有所有有效数据,所以 For 循环遍历每个条目似乎是最好的。
-
好吧,我试试。但是我究竟如何得到数组中位置的值而不是数组位置号呢?