黑马程序员-集合和泛型集合-学习笔记

------- Windows Phone 7手机开发.Net培训、期待与您交流! -------
垃圾回收:
1、CLR的一个核心功能
2、垃圾回收器,的目的:提交内存利用率
3、只回收托管堆中的内存资源,不回收其他资源(数据库连接,文件句柄,网络端口等)
4、GC.Collect();//手动垃圾回收(不建议使用)


集合介绍:
延伸(数组特点:类型统一,长度固定)
集合常用操作:添加,遍历,移除(增、删、查、改,遍历)
命名空间System.Collections
1、ArrayList:  可变长度数组,使用类似数组
属性Capacity(集合中可以容纳元素的个数,翻倍增长)
属性Count(集合中世纪存放的元素个数)
方法:  Add();//添加元素
AddRange();//添加数组到集合
Remove();//根据对象删除元素
RemoveAt();//根据索引删除元素
Clear();//清空集合
Contains();//判断是否包含某个元素
ToArray();//把集合转换成数组
Sort();//排序
Reverse();//反转
2、Hashtable:键值对的对河,类似字典,Hashtable在查找元素的时候,速度很快。
方法:  Add(object key,object value);//添加元素
hash["key"];//查询元素
hash["key"]="修改"//修改元素
Contains;//等价于ContainsValue,内部也是调用的ContainsValue。
ContainsValue;//值是否存在
ContainsKey("key");//key是否存在
Remove("key");根据key删除元素
遍历:  hash Keys//遍历key
hash Values//遍历values
DictionaryEntry//同时遍历key和values


注意:以上两种集合很少使用,后期用
list<T>(泛型)代替ArrayList(非泛型)
Dictionary<K,V>(泛型)代替Hashtable(非泛型)


扩展:
随机数:Random r = new Random();
r.next(1,101);//随机生成1-100之间的数
注意事项:如果种子相同,产生的随机数是相同的,种子根据时间来决定。


泛型集合:(dotnet 2.0以上才有)
命名空间:System.Collcetions.Generic
List:
举例:List<T> list = new List<T>();
解释:T是Type是简写,该处填写某一数据类型。


1、通过泛型可以限定集合中存储数据的类型。
2、ToArray();//返回值类型自动对应设定的类型。


Dictionary:
举例:Dictionary<TKey,TValues> dict = new Dictionary<TKey,TValues>();
解释:TKey和TValue是简写,该处填写某一数据类型
1、遍历key
foreach(TKey item in dict.Keys)
{
Console.WriteLine(item);
}
2、遍历value
foreach(TValue item in dict.Values)
{
Console.WriteLine(item);
}
3、同时遍历key和value
foreach(KeyValuePair<Tkey,TValue> kv in dict)
{
Console.WriteLine(kv.Key);
Console.WriteLine(kv.Value);
}


var关键字介绍:
var是一个“类型推断”,在程序编译的时候就已经替换成对应的数据类型,所以说var是一个强类型(在编译的时候已经可以确定数据类型了),而不是弱类型。
扩展:javascript中的var是弱类型。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值