ArrayList实用好处有哪些

解决方案 »

  1.   

    ArrayList 是数组的复杂版本。ArrayList 类提供在大多数 Collections 类中提供但不在 Array 类中提供的一些功能。例如: Array 的容量是固定的,而 ArrayList 的容量是根据需要自动扩展的。如果更改了 ArrayList.Capacity 属性的值,则自动进行内存重新分配和元素复制。 
    ArrayList 提供添加、插入或移除某一范围元素的方法。在 Array 中,您只能一次获取或设置一个元素的值。 
    使用 Synchronized 方法可以很容易地创建 ArrayList 的同步版本。而 Array 将一直保持它直到用户实现同步为止。 
    ArrayList 提供将只读和固定大小包装返回到集合的方法。而 Array 不提供。 
    另一方面,Array 提供 ArrayList 所不具有的某些灵活性。例如: 可以设置 Array 的下限,但 ArrayList 的下限始终为零。 
    Array 可以具有多个维度,而 ArrayList 始终只是一维的。 
    特定类型(不包括 Object)的 Array 的性能比 ArrayList 好,这是因为 ArrayList 的元素属于 Object 类型,所以在存储或检索值类型时通常发生装箱和取消装箱。 
    要求一个数组的大多数情况也可以代之以使用 ArrayList。它更易于使用,并且通常具有与 Object 类型的数组类似的性能。Array 位于 System 命名空间中;ArrayList 位于 System.Collections 命名空间中
      

  2.   

    ArrayList 用于不定长的数组,可以随意的增删。超级好用^_^
      

  3.   

    正如  vosov(ask a favor of wind...)  所说,它是动态数组。例如 Contains、CopyTo、IndexOf、Remove、Sort等对列表常见的基本操作都有现成的实现。
      

  4.   

    ArrayList需要注意坼箱装箱的性能问题,
    在.net 2.0 下可以使用泛型代替.
      

  5.   

    最起码你能随便ADD一个元素上去,随便改变元素个数