.Net中的类:System.Collections.ArrayList
ArrayList 的容量是该列表可包含的元素数。随着向 ArrayList 中添加元素,容量通过重新分配按需自动增加。可通过调用 TrimToSize 或通过显式设置 Capacity 属性来减少容量。 此集合中的索引从零开始。
先定义 两个对象,分别是字符串数组str1 和 ArrayList 对象 list1 ;
string[ ] str1 = new string[ 20 ]; //数组初始化时需指定长度
ArrayList list1 = new ArrayList( ); //可以在程序运行过程中动态分配空间,其容量(长度)可变
1、将数组Array 转换为ArrayList:
foreach( string strTmp str1 )
{
list1.Add( strTmp );
}
2、ArrayList转换为Array:
str1 = ( string[] ) list1.ToArray( typeof( string ) );
使用到的方法:
将 ArrayList 的元素复制到指定类型的新数组中,
[C#]
public virtual Array ToArray( Type type );
type 是要向其中添加或复制元素的数组的类型,在上面的例子中是string;返回值是指定类型的数组,在上例中通过强制类型转换(string[] )来指定为字符串数组。
3、将Array转换为ArrayList的另一方法:
list1 = ArrayList.Adapter (str1 );
使用到的方法:
[C#]
public staticArrayList Adapter( IList list );
4、Array转换为ArrayList 还可以通过ArrayList的AddRange方法来实现:
list1.AddRange( str1 );
使用到的方法:
将 ICollection 的元素添加到 ArrayList 的末尾。
[C#]
public virtualvoid AddRange( ICollection c );
参数
-
c
- ICollection,其元素应被添加到 ArrayList 的末尾。集合本身不能为空引用(Visual Basic 中为 Nothing),但它可以包含为空引用 ( Nothing) 的元素。
Array类是从ICollection接口派生的一个子类。
其定义:public abstract class Array : ICloneable, IList, ICollection, IEnumerable
参数
-
list
- 要包装的 IList。 Array是从IList接口派生的一个子类