在向大家详细介绍VB.NET重新申明数组之前,首先让大家了解下VB.NET中使用ReDim语句要注意的几点,然后全面介绍VB.NET重新申明数组。
VB.NET重新申明数组
在VB.NET重新申明数组和VB中基本类似,依然使用的是ReDim语句。在VB.NET中使用ReDim语句要注意以下三点:
1. ReDim语句仅可以在过程级出现。这意味着不可以在类或模块级代码区使用ReDim语句来重新申明数组。
2. ReDim语句只是更改已被正式声明的数组的一个或多个维度的大小,但不能更改该数组的维数。
3. ReDim语句无法更改数组中元素的数据类型,和Dim语句申明数组的区别在于无法在ReDim语句中初始化重新申明的数组。
在使用ReDim重新申明数组时,最为常见的关键字就是“Preserve”。“Preserve”的作用是表明在重新申明数组时,是否要在重新申明的数组中复制原数组中的元素。请比较下面二段代码:
Dim arrString ( 2 ) As String = {"星期一","星期二","星期三"}
ReDim Preserve arrString ( 4 )
'重新申明arrString数组,数组的长度改为5,并且在新数组中复制原数组的元素
arrString ( 3 ) = "星期四"
arrString ( 4 ) = "星期五"
Dim arrString ( 2 ) As String = {"星期一","星期二","星期三"}
ReDim arrString ( 4 )
'重新申明arrString数组,数组的长度改为5,并不往新数组中复制原数组的元素
arrString ( 0 ) = "星期一"
arrString ( 1 ) = "星期二"
arrString ( 2 ) = "星期三"
arrString ( 3 ) = "星期四"
arrString ( 4 ) = "星期五"
通过比较上述二段代码,可见,在第一段代码中由于ReDim中使用了Preserve关键字,所以在重新申明数组时,就在新数组中复制了原数组的元素,这样就只需要对其中的二个元素进行初始化;而第二段由于没有使用Preserve关键字,就没有在新数组中带入原数组中的任何元素,所以对数组的所有元素都进行初始化。以上介绍VB.NET重新申明数组,通过对二段代码的比较,相信您对重新定义数组和“Preserve”关键字的使用有了更深的理解。