《C#入门经典》学习笔记(一)

感觉从第11章开始,学习难度加大了.所以要更加用心.

第11章 集合,比较和转换
11.1集合
1.集合类一般用于处理对象列表,其功能比简单数组要多,这些功能是通过实现System.Collection命名空间中的接口而获得的。
2.在System.Collections命名空中有许多接口提供了基本的集合功能。
Enumerate列举,枚举 Ienumerable 可以迭代集合中的项
ICollection,集合 可以获取集合中项的个数,并能把项复制到一个简单的数组类型中
IList列表 继承于Ienumerable和Icollection,提供了集合的项列表,并可以访问这些项,以及其他一些与项列表有相关的功能。
Idictionalry字典 继承于IEnumerable和Icollection,类似于IList,但提供了可通过键码值而不是索引访问的项列表。

11.1.1使用集合
1.集合的创建
第一个集合使用System.Array类,必须用固定的大小来初始化数组。
Animal[] animalArray=new Animal[2]

第二个集合使用System.Collections.ArrayList类,不需要初始化大小
ArrayList animalArrayList=new ArrayList();

2.初始化对象(数组项)
Cow myCow1=new Cow("Deirdre");
animalArray[0]=myCow1;
animalArray[1]=new Chicken("Ken");

3.添加新的集合项
Cow myCow2=new Cow("Hayley");
animalArrayList.Add(myCow2);
animalArrayList.Add(new Chicken("Roy"));

11.1.2定义集合
1.一种方式是手动执行需要的方法,不推荐
2.一种方式是从一个类中派生自己的集合,例如:System.Collection.CollectionBase类(其它类也可以?),推荐方式
3.CollectionBase提供了两个受保护的属性,List和InnerList.他们可以访问存储的对象本身:
//List可以通过IList接口访问项,InnerList则是用于存储项的ArrayList对象.不明白?

11.1.3 索引符
1. 索引符是(一种特殊类型的)属性,可以把它添加到一个类中,以提供类似于数组的访问.
它最常见的一个用法是对(项)执行简单的数据索引.

你可能感兴趣的:(学习笔记)