1、ArrayList集合相对于数组有两个好处,一是长度可以改变,二是数据类型可以任意添加。
2、将一个对象放入集合,在控制台输出的是该对象的命名空间
3、每次集合中实际包含的元素个数超过了可以包含的元素的个数(capcity)的时候,集合就会向内存中申请开辟一倍的空间
代码如下
当然ArrayList还有很对其他属性和用法,小伙伴们可以自己去查看一下。
for (int i = 0; i < list.Count; i++)
{
if (list[i] is ClassA)
{
((ClassA)list[i]).Say();
}
else if (list[i] is int[])
{
for (int j = 0; j < ((int[])list[i]).Length; j++)
{
Console.WriteLine(((int[])list[i])[j]);
}
}
else
{ }
}
}
void List2()
{
//使用AddRange就可以直接使用输出读取了,而不用像上面那样做一个集合输出的转换判断
ArrayList list = new ArrayList();
list.AddRange(new int[] { 1, 2, 3 });
for (int i = 0; i < list.Count; i++)
{
Console.WriteLine(list[i]);
}
}
void List3()
{
ArrayList list = new ArrayList();
list.AddRange(new int[] { 1, 2, 3 });
list.Remove(1); //删除元素1
list.RemoveAt(1); //山存储索引为1的元素,在此处指的是2这个值
list.RemoveRange(0,list.Count); //从索引0开始删除指定数量的元素
list.Insert(0,"hh"); //在指定索引处插入值
list.InsertRange(0,new string[] {"gg","uu" }); //在指定的索引处插入一个集合
bool b= list.Contains(1); //判断是否包含有指定的元素
}