第二天的学习:
集合框架(二):
1,contains方法:底层依赖的都是equals方法,
如果在自定义类的集合中使用contains方法,必须重写equals方法,否则达不到想要的结果。
2,LinkedList的功能方法:底层数据结构是链表;
功能方法:
void addFirst(E e);//从头部添加
E getFirst(); //从头部获取
E removeFirst(); //从头部移除
E get(int index); //按照索引获取(底层实现是链表的遍历)
另外,还有从尾部删除,从尾部获取,从尾部移除的方法。
3,可以用linkedList的特性,
实现栈 addLast();removeLast();先进后出
队列。 addLast();removeFirst();先进先出
4,泛型(会用就好):
由来:为了消除安全隐患,把错误从运行期转移到编译期。
只能存储引用类型。
5,jdk1.5的新特性:
自动拆装箱,增强for循环,静态导入(不常用),可变参数
三种迭代:
普通for循环,可以删除,但是索引要向前移动。(i--)
迭代器:可以删除,但是自能用迭代器自身的remove方法,不然会出现并发修改异常。(重点关注)
增强for循环:不可以删除,底层是用迭代器实现的
可变参数:
定义方法的时候不知道参数有多少个的时候用。
这里的参数,其实是一个数组。
如果方法里有多个参数,并且有可变参数,必须把可变参数放在最后。
数组工具类Arrays:
asList();
集合嵌套:。。。
练习,,练习!!代码,代码!! |
|