码迷,mamicode.com
首页 > Windows程序 > 详细

C#之 ArrayList概述

时间:2015-05-28 07:04:56      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:

ArrayList 类相当于一种高级的动态数组. Array类的升级版本。

概述:

ArrayList 位于 System.Collections命名空间下

可以动态的删除和添加元素, 从某种意义上来讲, 他是数组的高级版, 但是并不等同于数组。

与数组相比, ArrayList 类提供了以下几个功能:

? ? 1. 数组的长度是固定的(一旦声明,不可更改, 超出将数组越界); ArrayList 的长度可以根据需要自动扩充。

? ? 2. ArrayList 提供了添加、删除、和插入某范围内元素的方法; 数组中仅能一次获取或设置一个元素的值。

? ? 3. ArrayList 提供将只读和固定大小包装并返回到集合的方法; 数组并未提供。

? ? 4. ArrayList 只能是一维形式; 而数组可以是多维的。

ArrayList 声明方式:

? ? ArrayList 提供了3个构造器, ?所对应的的是3种声明方式:

? ? [1]. 默认的构造器, 以默认的大小(16)来初始化内部的数组

? ? ? ? public ArrayList();

? ? ? ? 声明:

? ? ? ? ArrayList list = new ArrarList();

? ? ? ? 示例: (声明一个ArrayList 对象, 并添加10int类型的元素)

? ? ? ? ArrayList arrayList = new ArrayList();

? ? ? ? for (int i = 0; i < 10; i++)

? ? ? ? {

? ? ? ? ? ? arrayList.Add(i);

? ? ? ? }

? ? [2]. 用一个ICollection 对象来构造, 并将该集合的元素添加到ArrayList中:

? ? ? ? public ArrayList(ICollection);

? ? ? ? 声明:

? ? ? ? ArrayList arrayList = new ArrayList(arrayName);?//arrayName: 要添加到ArrayList中的数组名

? ? ? ? 示例:(将一维int数组添加到ArrayList集合中)

? ? ? ? int[] array = new int[] {1,2,3,4,5,6,7};

? ? ? ? ArrayList arrayList = new ArrayList(array);

? ? [3]. 用指定的大小初始化内部的数组

? ? ? ? public ArrayList(int);

? ? ? ? 声明:

? ? ? ? ArrayList arrayList = new ArrayList(10);

? ? ? ? 示例:(声明长度为10ArrayList集合, 并动态添加元素)

? ? ? ? ArrayList arrayList = new ArrayList(10);

? ? ? ? for (int i = 0; i < arrayList.Count; i++)

? ? ? ? {

? ? ? ? ? ??//arrayList.Count 获取ArrayList对象的长度

? ? ? ? ? ? arrayList.Add(i);

? ? ? ? }

ArrayList 的常用属性:

属性

说明

Capacity

获取或者设置ArrayList可以达到的长度

Count

获取ArrayList对象实际的长度

IsFixedSize

bool, 指示ArrayList是否具有固定的大小

IsReadOnly

bool, 指示ArrayList是否为只读

IsSynchronized

bool, 指示是否同步对ArrayList 的访问

Item

获取或者设置指定索引处的元素

SyncRoot

获取可用于同步ArrayList访问的对象

ArrayList 元素的添加:

? ?ArrayList中提供了 Add() Insert() 方法向ArrayList集合中添加元素:

? ?[1]. Add(): //或者AddRange()

? ? ? ?Add() 不能规定添加到集合中元素的位置, 一般是在ArrayList集合的结尾处。

? ? ? ?语法:

? ? ? ? arrayList.Add(Object value);

? ? ? ? arrayList.AddRange(array)

? ? ? ??//value: 要添加到 ArrayList 末尾处的Object, 该值可以为空引用, 同样允许重复的值;

? ? [2]. Insert(): //或者Insert

? ? ? ? Insert() 方法用来将元素添加到集合指定位置(以索引表示)

? ? ? ? 语法:

? ? ? ? arrayList.Insert(int index, Object value);

? ? ? ??//index: 0开始的索引

? ? ? ? //value: Add()

? ? ? ? 说明:

? ? ? ? 如果说ArrayList实际存储的元素数量已经等于ArrayList可以存储的元素数, 则会通过自动重新分配内部数组增加ArrayList 的容量(即长度), 并在添加新元素之间将现有的元素复制到新的数组中。

? ? ? ? ? ?? ?

ArrayList Array 的相互转换:

C#之 ArrayList概述

标签:

原文地址:http://www.cnblogs.com/winzel/p/4534854.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!