zoukankan      html  css  js  c++  java
  • Java集合框架

    Java完整容器分类图

    图片来源:

      点线框代表接口,实线框代表普通的(具体的)类,空心白箭头的点线表示一个特定的类实现了一个接口,实心黑箭头表示某个类可以生成箭头所指向类的对象。

    ArrayList与LinkedList的区别

      ArrayList的底层数据结构是数组,它擅长于随机访问元素,使用下标查找元素的时间复杂度是O(1),但是在ArrayList的中间插入和移除元素时比较慢。

      LinkedList的底层数据结构是双向循环链表,不支持随机访问,使用下标查找元素的时间复杂度是O(n),但是在LinkedList中间进行插入和删除代价花费较小,速度比ArrayList快。(注:具体的问题,请具体分析,不一定LinkedList快)

    Set

      Set(interface):存入set的元素必须是唯一的,加入Set的元素必须定义equals方法以确保对象的唯一性,Set接口不保证维护元素的次序。

      *HashSet(默认选择):为快速查找而设计的Set。存入HashSet的元素必须定义hashCode()

      TreeSet:保持次序的Set,底层为树结构。使用它可以从Set中提取有序的序列。元素必须实现Comparable接口。

      LinkedHashSet:具有HashSet的查询速度,且内部使用链表维护元素的顺序(插入次序)。元素也必须定义hashCode()方法。

    待续...

  • 相关阅读:
    相关正则的一些知识
    数组中的方法
    封装ajax
    swiper结合ajax的轮播图
    事件
    原型、原型链
    HTML 常用标签
    HTML基础了解
    JSON 与 XML基本了解
    JavaScript(js)
  • 原文地址:https://www.cnblogs.com/yunche/p/9550654.html
Copyright © 2011-2022 走看看