Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Vb.net中使用数组_Vb.net_Arrays - Fatal编程技术网

在Vb.net中使用数组

在Vb.net中使用数组,vb.net,arrays,Vb.net,Arrays,我刚开始创建数组,有一个问题。假设您正在创建一个数组,但不知道数组中的项目总数。如何使用它而不出现空错误。注意,我知道我可以这样添加数组: Dim myArray("1", "2", "3", "4", "5") as string 例如,假设一个用户在文本框中输入姓名,我想将其添加到数组中。我将如何做到这一点: 这就是我到目前为止得到的结果,我得到一个空错误: Dim myArray() as string myArray(0) = "John" myArray(

我刚开始创建数组,有一个问题。假设您正在创建一个数组,但不知道数组中的项目总数。如何使用它而不出现空错误。注意,我知道我可以这样添加数组:

  Dim myArray("1", "2", "3", "4", "5") as string  
例如,假设一个用户在文本框中输入姓名,我想将其添加到数组中。我将如何做到这一点:

这就是我到目前为止得到的结果,我得到一个空错误:

   Dim myArray() as string

   myArray(0) = "John"
   myArray(1) = "Jim"
   myArray(2) = "James"

在第二个代码示例中,您会遇到崩溃,因为如果不在数组中放入值,数组没有定义的大小。要使数组在定义后具有大小,请使用

在.NET中,最好使用数组而不是数组,除非您确实必须使用数组。这样,您就不必担心边界,列表将根据需要增长


如果您确实需要一个数组并且在.NET 3.5中,那么您可以使用

,如davisoa所说,您可以使用generic list类:

Dim list as new List(of string)
list.Add("John")
list.Add("Jim")
list.Add("James")

Console.WriteLine(list(2))

您将获得异常,因为您尚未定义数组的长度。可以使用ReDim定义长度,例如:

ReDim myArray(3)
但在编译时或运行时,您似乎都不知道数组的长度,因此最好使用List或。下面一行的内容:

Dim list As New ArrayList
    list.Add("One")
    list.Add("Two")
    list.Add("Three")

没有回答OP为什么会出现异常的问题。然后,你可以建议一个解决方法。除了我给了他一个用法的例子。