集合

数组的局限性
1.只能存储想同类型的数据
2.不能扩展容量

集合数组
1.仅仅只创建一个集合对象
2.给定集合一个初始容量 当存储的元素 大于初始容量是会自动增长一点
3.让一个集合作为参数 赋值给新的集合对象
ArrayList arrList = new ArrayList();
错误添加方法:
arrList[0] = 100;
arrList[1] = “吕太白”;
arrList[2] = 10.1f;
正确添加元素的方法
arrList.Add(100);
arrList.Add(“吕太白”);
arrList.Add(10.1f);
在指定位置插入元素 ArrayList是一个有序的集合
arrList.Insert(0, “脚酸”);
删除指定元素
arrList.Remove(100);
删除集合中下标为0的元素
arrList.RemoveAt(0);
顺序翻转
arrList.Reverse();
确定某元素是否在ArrList中
bool result = arrList.Contains(“吕太白”);
清空集合中的所有元素
arrList.Clear();
排序方法(默认升序)
arrList.Sort();
var 特指任意类型
foreach (var item in arrList )
{
Console.WriteLine(item);
}
//泛型的动态数组
//ta和ArrayList非常相似 只是List存储的时候相同类型的数据
//而ArrayList
/*
List list = new List();
list.Add(100);
list.Add(20);
list.Add(123);

List list1 = new List();
list1.Add(“吕太白”);
list1.Add(“是”);
list1.Add(“SB”);

List list2 = new List();
list2.Add(arrList);
*/
//堆栈 数据后进先出
//如果是泛型的堆栈 那么 ta 其中存储的数值量相同类型
Stack stack = new Stack();
//添加元素
stack.Push(“abc”);
stack.Push(15);
stack.Push(“吕太白”);
stack.Push(“SB”);
//移除顶部元素
stack.Pop();
//返回顶部元素 但是不移除
var a = stack.Peek();
Console.WriteLine(a);
foreach (var item in stack)
{
// Console.WriteLine(item);
}
//队列 先进先出
Queue q = new Queue();
//在队列的结尾处添加元素
q.Enqueue(15);
q.Enqueue(“吕太白”);
q.Enqueue(“SB”);
//移除最开始进入队列的元素并返回移除的元素
var b = q.Dequeue();
//Console.WriteLine(b);
//Kry值必须是唯一的 value 可以是任意值
Hashtable h = new Hashtable();
h.Add(1, “吕太白”);
h.Add(2, “吕太白”);
h.Add( “吕太白”,“SB”);
h.Add( “吕太白”,“BigSB”);
//移除所有元素
//h.Clear();
bool b1 = h.ContainsKey(1);
Console.WriteLine(b1);
//判断哈希表中是否有某个值
bool b2 = h.ContainsValue(“SB”);
// Console.WriteLine(b2);
//删除表中指定键的值
h.Remove(1);
//哈希表的取值 表名[键key]
// Console.WriteLine(h[1]);

        //h.keys 取到表中所有的key
        //哈希表中存储值的键值对不是有序的
        foreach (var key in h.Keys)
        {
            Console.WriteLine(h[key]);
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值