集合
集合ArrayList
特点: 可变长度且里边的数组可用任何类型
堆heap 占stack
定义一个静态方法,在里面实例化ArrayList
ArrayList a=new ArrayList();
foreach(int temp in new int[7]{1,12,2,3,4,55,6,7}//这是个匿名数组,用匿名数组的原因,只用这一次)
属性:Count(的到集合中的实际存放数据的个数)
Capacity(集合的容量)。乘2变大。如,4,8,16
方法:
a.Add(number) //add方法
a.Insert(要插入的位置,插入的内容)
remove(要移除的内容) 移除 方法
removeAT(要移除的内容的位置) 如果要用for删除集合元素的话
for(i=0;i<a.length;i++)
{
a.removeAT(0);因为移除了一个之后被移除的元素空间也没有了如果把0变成i的话就删不完,且出错。因为原来在1位置上的元素变成0位置了,如果是0就是一直删除0位置上的数,知道删完。
}
TrimToSize() 收缩空间
AddRange(接口名)
ToArray(); 可以让集合变成一个数组。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
namespace 练习_集合
{
class Program
{
static void Main(string[] args)
{
ArrayList al1 = new ArrayList() { 'a','b','c','d' };
ArrayList al2 = new ArrayList() { 'c','d','f','j' };
ArrayList al3 = new ArrayList();
al3.AddRange(al1);
for (int i = 0; i < al2.Count; i++) {
if (!al3.Contains(al2[i])) {
al3.Add(al2[i]);
}
}
for (int i = 0; i < al3.Count; i++)
{
Console.WriteLine(al3[i]);
}
Console.ReadKey();
}
}
}