zoukankan      html  css  js  c++  java
  • 【集合:Collection】

    集合:Collection(单列集合)

      List(有序,可重复)

        ArrayList

          底层数据结构是数组,查询快,增删慢线程不安全,效率高

        Vector

          底层数据结构是数组,查询快,增删慢线程安全,效率低

        LinkedList

          底层数据结构是数组链表,查询慢,增删快线程不安全,效率高

      Set(无序,唯一)

        HashSet

          底层数据结构是哈希表

          哈希表依赖两个方法:hashCode() equals()

          哈希表依赖两个方法:hashCode() equals()

            执行顺序:

              首先判断 hashCode()值是否相同

              是:继续执行 equals(),看其返回值

                是 true:说明元素重复,不添加

                是 false:就直接添加到集合

              否:就直接添加到集合

            最终:自动生成 hashCode() equals()即可

        LInkedHashSet

          底层数据结构由链表和哈希表组成由链表保证元素有序

          由哈希表保证元素唯一

        TreeSet

          底层数据结构是红黑表(是一种自平衡二叉树)

          如何保证元素唯一性呢?

            根据比较的返回值是否是 0 来决定

          如何保证元素的排序呢?

            两种方式

              自然排序(元素具备比较性)

                让元素所属的类实现 Comparable 接口

              比较器排序(集合具备比较性)

                让集合接收一个 Comparator 的实现类对象

    终身学习者
  • 相关阅读:
    检测当前浏览器及版本
    js 实现两个小数的相乘、相除功能
    echarts图表初始大小问题及echarts随窗口变化自适应
    element-ui走马灯如何实现图片自适应 长度和高度 自适应屏幕大小
    vue中淡入淡出示例
    CSS3------box-shadow,即单边阴影效果设置
    webpack4 自学笔记五(tree-shaking)
    webpack4 自学笔记四(style-loader)
    webpack4 自学笔记三(提取公用代码)
    webpack4 自学笔记二(typescript的配置)
  • 原文地址:https://www.cnblogs.com/zuixinxian/p/10340734.html
Copyright © 2011-2022 走看看