vb.net的數(shù)組列表(ArrayList)
現(xiàn)在除了數(shù)組的長(zhǎng)度計(jì)數(shù)是基于0開(kāi)始的這個(gè)變化外,vb.net還引進(jìn)了一個(gè)數(shù)組列表(ArrayList)對(duì)象來(lái)代替原來(lái)的集合(Collection)對(duì)象,集合對(duì)象的長(zhǎng)度計(jì)數(shù)總是從1開(kāi)始的,而且在需要的時(shí)候,數(shù)組列表的長(zhǎng)度可以是不定的。數(shù)組列表的基本的方法和集合一樣,只不過(guò)它還具有一些新的功能方法。 例如: Dim Arl As ArrayList '構(gòu)建一個(gè)數(shù)組列表 For j=0 to 10 Arl.Add(j) Next j 所有的數(shù)組變量都有一個(gè)長(zhǎng)度屬性,這樣就可以得知這個(gè)數(shù)組有多大: Dim Z(20) As Single Dim j As Integer For j=0 to z.Length-1 Z(j)=j Next j
在vb.net中所有的數(shù)組都是動(dòng)態(tài)的,可以在任何時(shí)候重新定義數(shù)組的長(zhǎng)度,然而,在vb.net中已經(jīng)沒(méi)有ReDim Preserve表述了,可以使用New關(guān)鍵字來(lái)對(duì)任何一個(gè)數(shù)組進(jìn)行引用,并且重新定位: '在類(lèi)模塊級(jí)聲明 Dim X() As Single '重新定位 X=New Single(20){} 注意:數(shù)組類(lèi)型后面的大括號(hào)不要忘記寫(xiě)。 和集合對(duì)象一樣,數(shù)組列表含有一個(gè)“Count”屬性和一個(gè)“Item”屬性,允許使用“index”來(lái)訪(fǎng)問(wèn)數(shù)組列表中的元素。而且,和集合對(duì)象一樣,這個(gè)屬性也可以省略,感覺(jué)就像操作數(shù)組一樣: For i=0 to ar.Count-1 Console.WriteLine(ar.Item(i)) console.WriteLine(ar(i)) Next i 下表為數(shù)組列表的一些方法:
Clear |
清空數(shù)組列表的內(nèi)容 |
Contains(object) |
如果數(shù)組列表含有該對(duì)象則返回true |
CopyTo(array) |
把一個(gè)數(shù)組列表拷貝到一個(gè)一維的數(shù)組中去 |
IndexOf(object) |
返回第一個(gè)元素的值 |
Insert(index,object) |
在指定的位置插入一個(gè)元素 |
Remove(object) |
把一個(gè)元素從列表中刪除 |
RemoveAt(index) |
把一個(gè)指定位置的元素從列表中刪除 |
Sort |
對(duì)列表進(jìn)行排序 |
注意:本部分講座的數(shù)組是程序中聲明的變量數(shù)組,不同于控件數(shù)組??丶?shù)組是在設(shè)計(jì)時(shí)通過(guò)設(shè)置控件的“Index”屬性規(guī)定的,變量數(shù)組總是連續(xù)的;與控件數(shù)組不同的是,不能從一個(gè)數(shù)組的中部加載或卸載數(shù)組元素。 一個(gè)數(shù)組中的所有元素具有相同的數(shù)據(jù)類(lèi)型。當(dāng)然,當(dāng)數(shù)據(jù)類(lèi)型為“object”時(shí),各個(gè)元素能夠包含不同種類(lèi)的數(shù)據(jù)(對(duì)象、字符串、數(shù)值等)。可以聲明任何基本數(shù)據(jù)類(lèi)型的數(shù)組,包括用戶(hù)自定義的類(lèi)型和對(duì)象變量。此外,數(shù)組在vb.net中已經(jīng)是完全的動(dòng)態(tài)的了。
|