黑马程序员技术交流社区
标题:
day16总结
[打印本页]
作者:
风的自由
时间:
2015-8-7 22:04
标题:
day16总结
1:常见的数据结构(理解)
(1)加钱:数据结构+算法+UML+设计模式
(2)栈,队列,数组,链表
栈:先进后出
队列:先进先出
数组:查询快,增删慢
链表:查询慢,增删快
(3)面试前:百度下常见的数据结构的优缺点。
作者:
风的自由
时间:
2015-8-7 22:15
2:List的三个儿子(理解)
(1)List的三个儿子特点:(面试题)
List
|--ArrayList
底层数据结构是数组,查询快,增删慢
线程不安全,效率高
|--Vector
底层数据结构是数组,查询快,增删慢
线程安全,效率低
|--LinkedList
底层数据结构是链表,查询慢,增删快
线程不安全,效率高
(2)到底使用谁?根据需求看
是否要安全:
是:Vector
否:ArrayList,LinkedList
查询多:ArrayList
增删多:LinkedList
如果你什么都不知道,用ArrayList。
(3)ArrayList(存储字符串和自定义对象)
重写equqls三个步骤
1. 判断是否为同一个对象
2. 判断是否为该类的对象
3. 向下转型,然后根据需求比较成员变量
(4)Vector(存储字符串和自定义对象)
有自己的特殊功能。
但是不用,被新功能给替代了。
(5)LinkedList(存储字符串和自定义对象)
有自己的特殊功能。可以很方便的操作头和尾。
(6)案例:(今天作业之一)
A:ArrayList存储字符串并去除重复值
B:ArrayList存储自定义对象并去除重复值
需求:我们认为同姓名和同年龄的人即为同一个人。
C:用LinkedList模拟栈数据结构
作者:
风的自由
时间:
2015-8-7 22:58
3:泛型(理解)
(1)泛型是一种把明确类型的工作放在了创建对象或者调用方法时候才去明确的特殊的类型。
(2)格式:
<数据类型>
(3)好处:(掌握)
A:解决了黄色警告线问题
B:把运行期间的转换异常给提前到了编译期间
C:优化了程序设计,不需要做强制类型转换了
(4)泛型的前世今生
A:泛型类
B:泛型方法
C:泛型接口
(5)泛型的使用:(掌握)
看API中的类或者接口,其后是否跟有<>,如果有,就是泛型的应用。
一般在集合中用。
4:增强for循环(掌握)
(1)格式:
for(数组或者Collection集合的元素类型 变量 : 数组或者Collection集合的对象)
{
直接使用变量即可。
}
(2)好处:
方便了数组和Collection集合的遍历。
(3)注意(注意):
A:增强for是用来替代迭代器的。
B:不要在用增强for遍历集合的时候,用集合对集合本身进行修改。
(4)遍历集合三种方式
迭代器
普通for+get
增强for(工作时候用)
作者:
谭威威威威
时间:
2015-8-8 15:58
支持。
作者:
godboy001
时间:
2015-8-8 16:17
赞啊,学习了
作者:
烬5
时间:
2015-8-8 16:27
6666666666一直写下去有收获的
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2