黑马程序员技术交流社区

标题: 学习总结 [打印本页]

作者: yangsing0    时间: 2014-11-12 20:42
标题: 学习总结
1.        ArrayList集合去掉重复元素
  集合方法contains,实现原理,其实是集合中存储的对象的equals完成
  去掉集合中的重复元素,重写equals方法,比较成员变量
  借用另一个集合来实现

2.        Vector
  JDK1.2版本实现List接口,底层也是可变数组,增长100%,线程安全运行效率低,从JDK1.2版本开始,此类被ArrayList取代
  知道特点,具体的代码体现,参考ArrayList

3.        LinkedList类
  底层结构链表结构,记录对象地址的方式存储。查询速度慢,增删快,线程不安全集合,运行速度快。单独操作列表开头和结尾
  XXXFirst  XXXLast
  JDK1.6后,出现了替代方法 offer-add  peek-get   poll-remove 使用的是get或者remoce,集合中的空的,出现异常,使用的是peek  poll返回null,不会出现异常
  模拟了数据结构,堆栈队列(面试题)

4.        泛型
  JDK1.5版本后出现的安全机制
  强制集合存储指定的数据类型
  问题由运行时起,提前到了编译时期
  泛型避免了数据类型的强制转换
  使用一个类的时候,发现类的定义右边有<>使用泛型了

  书写格式
    集合类<数据类型> 变量 = new 集合类<数据类型>();

   自定义泛型类,方法,接口,通配符,限定,作为了解

5.        增强for循环
  凡是Iterable接口下的集合,都可以使用增强for进行迭代,包括数组
  方便的遍历,比的功能不能实现
  for(数据类型 变量 : 数组或者集合){

  }
  如果以后需要遍历优先选择增强for,如果需要操作集合或者数组中的元素,例如排序,查找,替换,删除等,使用传统的循环,或者迭代器





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2