• .net框架-数组


    .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

  • 相关阅读:
    算法设计与分析——背包问题求解
    并行多核体系结构基础——第五章的多级高速缓存中的包含、排他、NINIE策略
    并行多核体系结构基础——第五章知识点和课后习题
    多耦合效应下的网络传播演化与分析
    算法设计与分析——矩阵链相乘求解
    算法设计与分析——动态规划之矩阵连乘
    并行多核体系结构基础——第五章的伪LRU(PLRU)算法简要介绍
    算法设计与分析——分治DC算法
    常见概率分布的特征函数推导
    算法设计与分析——最长公共子序列问题
  • 原文地址:https://www.cnblogs.com/ybtools/p/6377214.html
Copyright © 2020-2023  润新知