当前位置:网站首页 / asp.net /C# / 正文

C#中的数组之ArrayList

时间:2018年01月21日 | 作者 : ningjian | 分类 : asp.net /C# | 浏览: 59次 | 评论 0

前面讲到数组一旦给定大小就是固定的了,不能再改。 还有一种是数组是可以进一步扩充的,即AarrarList类,被称为动态数组或者集合


使用步骤


1、引入命名空间 System.Collections;

2、创建实例

3、引用对应的属性或方法

ArrayList myArrayList = new ArrayList();
//ArrayList的好处是,长度不固定,类型随意
//数组的长度是固定的,布恩那个更改的,类型单一,只能为其中的一种

Console.WriteLine("myArrayList 初始化之后有{0}个属性值",myArrayList.Count);


ArrayList 类增加元素的方法

//Add方法用于向ArrayList中添加单个元素,每次只能加一个
myArrayList.Add(123);
myArrayList.Add('a');
myArrayList.Add(25.6);
myArrayList.Add(10L);
myArrayList.Add("mystring");

Console.WriteLine("使用Add方法添加45个元素之后,有{0}个元素",myArrayList.Count);

//AddRange方法用于一次性向ArrayList中添加多个元素,可以是一个数组
string[] mystringArray={"张三","李四","王五","赵六"};
myArrayList.AddRange(mystringArray);

Console.WriteLine("使用AddRange方法之后,有{0}个元素",myArrayList.Count);

//遍历集合元素
//引用类型 string object所有类型的基类
foreach(object outelement in myArrayList) Console.Write(outelement+'\t');


ArrayList 类中元素的删除


Array类中元素的删除有以下四种方法:

1)、ArrayList变量名.Remove(值);

myArrayList.Add(123);
myArrayList.Add("成功");
myArrayList.Add(25.6);

string[] mystringArray={"张三","李四","王五","赵六"};
myArrayList.AddRange(mystringArray);
Console.WriteLine("删除之前的内容");
foreach(object outelement in myArrayList) Console.Write(outelement+'\t');
Console.WriteLine("删除之后的内容");
myArrayList.Remove("张三");
foreach(object outelement in myArrayList) Console.Write(outelement+'\t');

2)、ArrayList变量名.RemoveAt(索引值);


Console.WriteLine("删除李四之后的内容");
myArrayList.RemoveAt(3);
foreach(object outelement in myArrayList) Console.Write(outelement+'\t');


3)、ArrayList变量名.RemoveRange(开始索引值,要删除的个数);


Console.WriteLine("删除王五 赵六 之后的内容");
myArrayList.RemoveRange(3,2);
foreach(object outelement in myArrayList) Console.Write(outelement+'\t');


4)、ArrayList变量名.RemoveRange();  //清除所有的元素

Console.WriteLine("\n清除所有元素");
myArrayList.RemoveRange();
foreach(object outelement in myArrayList) Console.Write(outelement+'\t');


ArrayList 类中元素的遍历与查找


ArrayList myArrayList = new ArrayList(2);
myArrayList.Add("数字:");
int[] myintArray={1,2,3,4,5,6,7,8,9};
myArrayList.AddRange(myintArray);
myArrayList.Add("字符串:");
string[] mystringArray="张三","李四","王五","赵六"};
myArrayList.AddRange(mystringArray);
//以下实现ArrayList遍历
foreach(object outelement in myArrayList) Console.Write(outelement+'\t');
//元素的查找
//有三个方法
//1)、利用IndexOf(要查找的元素) ,返回一个首次出现的索引的整型值,如果查找不到返回-1
myArrayList.IndexOf("张三");
//2)、LastIndexOf(要查找的元素); 返回一个最后一次出现的索引整型值,否则返回-1
myArrayList.IndexOf("abc");
//3)、BinarySearch(); 查找不到返回-1
myArrayList.BinarySearch("张三");





猜你喜欢

额 本文暂时没人评论 来添加一个吧

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。