C#的ArrayList集合的使用

集合类是一种将各相同类型的对象集合起来的类,数组实质上也是集合类型中的一种。

集合主要是以线性结构存储结构

C#提供ArrayList类、Queue类、Stack类

1.ArrayList类简介:

ArrayList类可以动态地添加和删除元素。

ArrayList类相当于一种高级的动态数组,是Array类的升级版本,但它并不等同于数组。

2.与数组的比较:

(1)数组的容量是固定的,而ArrayList的容量可以根据需要自动扩充

(2)ArrayList提供添加,删除,插入某一范围元素的方法,但在数组中只能一次获取或设置一个元素值。

(3)ArrayList提供将只读和固定大小包装返回到集合的方法,而数组不提供

(4)ArrayList只是一维形式,而数组可以是多维的

3.ArrayList提供3个构造器,所以可以有3种声明方法:

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

public ArrayList()

示例:ArrayList list = new ArrayList();

for(int i=0;i<10;i++){list.Add(i)}//给ArrayList对象添加10个int类型元素

(2)用一个ICollection对象来构造,并将该集合的元素添加到ArrayList中

public ArrayList(ICollection)

示例:int[] arr = new int[]{1,2,3,4,5,6,7,8,9}

ArrayList list = new ArrayList(arr)//将一位数组添加到ArrayList集合中

(3)用指定的大小初始化内部的数组

public ArrayList(int)

示例:ArrayList list = new ArrayList(10)

for(int i=0;i<list.Count;i++){list.Add(i)}

4.ArrayList常用的属性:

Capacity          获取或设置ArrayList可包含的元素数

Count             获取ArrayList中实际包含的元素数

IsFixedSize       获取一个值,该值指示ArrayList是否具有固定大小

IsReadOnly        获取一个值,该值指示ArrayList是否为只读

IsSynchronized    获取一个值,该值指示是否听不对ArrayList的访问

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

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

5.添加ArrayList集合元素

(1)Add方法

将对象添加到ArrayList集合的结尾处

语法:public virtual int Add(Object value)

说明:value表示要加到ArrayList的末尾处的Object,该值可以为空引用。其返回值为ArrayList索引,表示已在此处添加了value

(2)Insert方法

将元素插入ArrayList集合的指定索引处

语法:public virtual void Insert(int index,Object value)

说明:index表示从零开始的索引,应在该位置插入value;value表示要插入的Object,该值可以为空引用。

注意:其实也可以用InsertRange方法给ArrayList插入一个数组的。

List.InsertRange(index,一位数组名)

6.删除ArrayList集合元素

(1)Clear方法

移除ArrayList中所有的元素

语法:public virtual void Clear()

(2)Remove方法

从ArrayList中移除特定对象的第一个匹配项

语法:public virtual void Remove(Object obj)

说明:obj表示要从ArrayList移除的Object,该值可以为空引用

(3)RemoveAt方法

移除ArrayList的指定索引处的元素

语法:public virtual void RemoveAt(int index)

说明:index表示要移除的元素的从零开始的索引

(4)RemoveRange方法

从ArrayList中移除一定范围的元素

语法:public virtual void RemoveRange(int index,int count)

说明:index表示要移除的元素的范围从零开始的索引,count表示要移除的元素数

7.遍历ArrayList集合

ArrayList list = new ArrayList();

list.Add("碟中谍")

list.Add("明日边缘")

foreach(string str in list){Console.Write(str+"")}

8.查找ArrayList集合元素

(1)Contains方法

确定某元素是否在ArrayList集合中

语法:public virtual bool Contains(Object item)

说明:item表示要在ArrayList中查找的Object,该值可以为空引用。其返回值表示,如果在ArrayList中找到item,则为TRUE

(2)IndexOf方法

搜索指定的Object,并返回整个ArrayList中第一个匹配项的从零开始的索引

语法:public virtual int IndexOf(Object value)

说明:value表示要在ArrayList中查找的Object,该值可以为空引用。其返回值表示,如果在ArrayList中找到value的第一个匹配项,则为该项的从零开始的索引,否则为-1

(3)LastIndexOf方法

搜索指定的Object,并返回整个ArrayList中最后一个匹配项从零开始的索引

语法:public virtual int LastIndexOf(Object value)

说明:value表示要在ArrayList中查找的Object,该值可以为空引用。其返回值表示,如果在ArrayList中找到value的最后一个匹配项,则为该项的从零开始的索引,否则为-1

C#的ArrayList集合的使用,布布扣,bubuko.com

时间: 2024-10-14 12:43:50

C#的ArrayList集合的使用的相关文章

ArrayList集合--关于System.out.print(Object obj);的理解

1.ArrayList集合中常用的方法 ArrayList<Student> stuArrayList = new ArrayList<>(); //定义一个集合对象 stuArrayList.add():    //添加元素 stuArrayList.add(index, e):    //在某个位置添加元素,但不覆盖原元素 stuArrayList.get(index):    //获取某位置的元素 stuArrayList.size():    //获取集合长度 stuArr

ArrayList集合

集合只可以存取引用数据类型,集合的长度可以改变, 基本数据类型对应的引用数据类型 int          Integer double     Double char        Character 定义格式:ArrayList<集合内元素类型> 变量 = new ArrayList<集合内元素类型>(); 方法:变量.add(元素)    增加元素 变量.remove(索引)   删除指定索引的元素 变量.set(索引,元素)  为指定的索引修改元素 变量.get(索引)  

ArrayList集合的语句示例

namespace ArrayList集合的语句示例{    class Program    {        static void Main(string[] args)        {            //一:Stack集合(没有索引)   先进后出,一个一个赋值,一个一个取值,按顺序            //Stack ss = new Stack();            //ss.Push("1");            //ss.Push("2&

ArrayList集合深入学习

ArrayList集合 创建ArrayList ArrayList类集成了AbstractList类 ArrayList中有两个构造方法(方法名相同,方法参数不同叫做重载),默认构造方法通过调用ArrayList(int)来事项ArrayList的创建,传入的值为10 ? ? 因为ArrayList类继承了AbstractList类,其中super调用了父类的默认构造方法,父类的该方法为一个空的方法(只有方法的声明,没有方法的实现),因此这段代码中最关键的是实例化了一个Object的数组,并将此

HashMap集合与ArrayList集合的遍历

ArrayList集合的遍历: HashMap集合的遍历: 随笔说: 在使用迭代器迭代集合的过程中,不能对集合进行增删操作.ArrayList允许重复存放元素, HashMap不支持重复存放元素.

C#语言基础——集合(ArrayList集合)

集合及特殊集合 集合的基本信息: System.Collections 命名空间包含接口和类,这些接口和类定义各种对象(如列表.队列.位数组.哈希表和字典)的集合.System.Collections.Generic 命名空间包含定义泛型集合的接口和类,泛型集合允许用户创建强类型集合,它能提供比非泛型强类型集合更好的类型安全性和性能.ystem.Collections.Specialized 命名空间包含专用的和强类型的集合,例如,链接的列表词典.位向量以及只包含字符串的集合. 常用的集合为Ar

Java基础知识强化之集合框架笔记27:ArrayList集合练习之去除ArrayList集合中的重复字符串元素

1. 去除ArrayList集合中的重复字符串元素(字符串内容相同) 分析: (1)创建集合对象 (2)添加多个字符串元素(包含重复的) (3)创建新的集合 (4)遍历旧集合,获取得到每一个元素 (5)拿着个元素到新集合中去找,看有没有   有:不搭理它 没有:添加到新集合      (6)遍历新集合 2. 案例代码: 1 package cn.itcast_04; 2 3 import java.util.ArrayList; 4 import java.util.Iterator; 5 6

ArrayList集合&amp;特殊集合

一.ArrayList集合 集合内可以放不同类型的元素 另:object类型为所有数据类型的基类 添加元素:.add(); 清空集合:al.clear(); 克隆集合:.clone(); 判断是否包含某个元素:.contains(); 获取第一次出现该元素的索引号:.indexof(); 获取最后一次出现该元素的索引号:lastindexof(); 移除第一个匹配元素:.Remove(); 移除某个索引位置上的元素:.RemoveAt(); 排序 升序:.sort(); 翻转集合:.Revers

2016年10月16日--ArrayList集合、特殊集合

ArrayList集合 使用前引用 using System.Collections; ArrayList集合 实例化.初始化 ArrayList al = new ArrayList(); ArrayList与Array的名字很相似. 相同点: (1)两者都实现了IList.ICollection.IEnumerable接口: (2)两者都可以使用整数索引访问集合中的元素,包括读取和赋值,且集合中的索引都从0开始. 不同点: (1)ArrayList是集合,而Array是数组: (2)Arra