------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
第14天
166到164集
166 为什么出现集合类 面向对象语言对事物的体现都是以对象的形式,所以为了方便对对个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方式。
数组是固定长度的;集合是可变长度的。数组中可以存储基本数据类型,集合自能存储对象。
集合只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象。
168 添加add(Object),删除。集合中存储的都是对象的引用(地址)。迭代器其实就是集合的取出元素的方式。判断和取出过程是集合数据取出方式的共性。
169 list:特有方法。凡是可以操作角标的方法都是该体系特有的方法。
增 add(index,element);addAll(index,Collection);
删 remove(index
改 set(index,element);
查 get(index):subList(from,to);
170 List集合特有的迭代器,ListIterator是Iterator的子接口。在迭代时,不可以通过集合对象的方法操作集合中的元素。因为会发生ConcurrentModificationException异常。所以,在迭代器时,只能用迭代器的方法操作元素,可是Iterator方法是有限的,只能对元素进行判断,取出,删除的操作,如果想要其他操作如添加,修改等,就需要使用子接口,ListIterator.
172 枚举Vector的名称以及方法的名称过程被迭代器取代。
173 LinkedList:特有方法 getFirst();getLast();remoceFirst();removeLast();
177 Set:元素是无序(存入和取出的顺序不一定一致),元素不可以重复。
HashSet:底层数据结构是哈希表。通过hashCode和equals来保证元素的唯一性。如果元素的HashCode值相同,才会判断equals是否为true,如果元素的hashcode值不同,才会调用equals.
TreeSet:可以对Set集合中的元素进行排序。
Set集合的功能和Collection是一致的。
第15天
180到192集
192 TreeSet:可以对Set集合中的元素进行排序。可以对Set集合中的元素进行排序。底层数据结构是二叉树。保证元素唯一性。
TreeSet排序的第一种方式:让元素自身具备比较性。元素需要实现Comparable接口。
193 元素不具有所需要的比较性时,就需要让集合自身具备标比较性。
196 泛型:用于解决安全问题,是一个类型安全机制。
好处
1.将运行时期出现问题ClassCastException,转移到了编译时期。方便于程序员解决问题。让运行时间减少,安全。
2.避免了强制转换麻烦。
泛型格式:通过<>来定义要操作的引用数据类型。通常在集合框架中很常见。
197 泛型类 当类中要操作的引用数据类型不确定的时候,早期定义Object来完成扩展。现在定义泛型来完成扩展。
198 泛型类定义的泛型,在整个类中有效。如果被方法使用,那么泛型类的对象明确要操作的具体类型后,所有要操作的类型就已经固定了。为了让不同方法可以操作不同类型,而且类型还不确定。那么可以将泛型定义在方法上。
199
静态方法不可以访问类上定义的泛型。如果静态方法操作的应用数据类型不确定,可以将泛型定义在方法上。
201 通配符。也可以理解为占位符。
泛型的限定:? Extends E:可以接收E类型或者E的子类型。上限。
?Super E:可以接收E类型或者E的父类型。下限。