1.13 C# 集合(非泛型)

来源:互联网 发布:网络现在做什么挣钱 编辑:程序博客网 时间:2024/06/09 22:11
day13 集合(非泛型)
1.System.Collections.Generic; //泛型
System.Collections; //非泛型
2.集合:
非泛型集合和泛型集合
ArrayList是线性数据结构

3.动态数组
ArrayList al = new ArrayList();
为了解决数组的局限性
1,长度固定
2,数组内元素类型固定

添加元素
装箱操作
int,string--object
拆箱操作
object--int,string

在指定位置插入一个新值
al.Insert(3,1);

排序
al.Sort();

删除某值
al.Remove('1');

删除索引
al.RemoveAt(0);

删除范围
al.RemoveRange(0, 2);

将arr中的元素复制到al集合中,此时复制的时候,
al不会自动扩充容量,所以需要al集合的长度要大于或者等于arr的长度.
int[] arr = { 1, 2, 3, 4 };
al.SetRange(0, arr);

获取一个范围的元素
ArrayList list= al.GetRange(0,4);

返回第一个匹配索引
Console.WriteLine(al.IndexOf(1));

返回最后一个匹配索引
Console.WriteLine(al.LastIndexOf(1));

集合反转
al.Reverse();

清空集合所有元素
al.Clear();

判断某个元素是否在al中
if (al.Contains(1))
{
Console.WriteLine("集合存在1这个数");
}

将al数组中的元素拷贝到object数组当中
object[] a=al.ToArray();

在集合中指定位置插入一个新的ICollection子类
int[] arrs = { 1, 2, 3 };
al.InsertRange(0, arrs);

遍历方式
foreach (var item in al)
{
//迭代变量不能赋值,只能读取
Console.WriteLine(item);
}
原创粉丝点击