.net框架所有数组均隐藏继承自System.Array。
数组有维数(Rank),长度(Length),元素类型(Element Type)基本属性.
数组基类System.Array:
Array实现了以下几个接口:ICloneable、IEnumerable、ICollection、IList。
Array中常被忽视的几个属性与方法:
Rank:只读实例属性,返回数组的维数。
GetLength:实例方法,返回数组中指定维数的元素个数。
Length:只读实例属性,返回数组中所有元素的总个数(我一直以为这个是返回某维数的元素个数,真是惭愧)。
GetLowerBound:实例方法,返回数组中指定维数的下限。
GetUpperBound:实例方法,返回数组中指定维数的上限。
IsSynchronized:只读实例属性,指示数组的访问是否线程安全,通常总为false。
SyncRoot:只读实例属性,返回一个可用来同步访问数组的对象。关于IsSynchronized和SyncRoot属性,可参看该文章:http://www.cnblogs.com/free722/archive/2011/03/25/1995120.html
GetEnumerator:实例方法,为数组返回一个IEnumerator。
Sort:静态方法,对数组元素进行排序,数组元素必须实现ICompare接口。
BinarySearch:静态方法,使用二分搜索法来搜索指定数组中的指定元素。该方法假定数组本身已经排好序。通常在调用BinarySearch前应首先调用Sort方法。
IndexOf:静态方法,返回某个值在数组中第一次出现的索引值。
LastIndexOf:静态方法,返回某个值在数组中最后一次出现的索引值。
Reverse:静态方法,反转数组全部或部分元素顺序。
Clone:实例方法,返回一个新创建数组,该数组是源数组的一个浅拷贝。
CopyTo:实例方法,将源数组中的元素拷贝到目的数组中。
Copy:静态方法,将一个数组中的部分元素拷贝到另一数组中,并根据需要进行适当转型。
CreateInstance:静态方法,创建一个数组实例,它允许我们动态定义拥有任何类型、任何维数、任何上下限的数组。
Array实现了以下几个接口:ICloneable、IEnumerable、ICollection、IList
public interface ICloneable
{
  object Clone();
}
public interface IEnumerable
{
  IEnumerator GetEnumerator();
}
 
public interface ICollection : Ienumerable
{
  int Count{get;}  //元素个数
  bool IsSynchronized{get;}  //是否同步集合访问(线程安全)
  object SyncRoot{get;}  //获取可同步访问对象
  void CopyTo(Array array,int index);  //从指定索引处复制数组元素到另一个数组。
}
public interface IList : ICollection,IEnumberable
{
  object this[int index] {get;set;}  //获取或设置位于指定索引处的元素
  bool IsFixedSize { get; }  //是否固定大小
  bool IsReadOnly { get; }  //是否只读
  增:
  int Add(object value)  //将项目添加到Ilist中
  int Insert(int index, object value)  //将项目插入到指定索引位置
  删:
  void Clear()  //移除IList所有项目
  void Remove(int index)  //移除指定索引处的Ilist项目
  void Remove(object value)  //移除特定对象的第1个匹配项
  查:
  bool Contains(object value)  //是否包括特定值 
  int IndexOf(object value)  //返回特定项目索引
}
原文:http://www.cnblogs.com/free722/archive/2011/03/28/1998153.html
原文:http://www.cnblogs.com/ybtools/p/6377214.html