zoukankan      html  css  js  c++  java
  • 容器

    容器API

    两个对象equal时,两个对象的hashcode相等

    Set

    没有顺序且不可以重复

    HashSet

    哈希表(数组+链表)

    List

    有顺序且可以重复(两个对象直接回想的equal,就算重复)

    ArrayList

    数组结构

    LinkList

    链表结构

    Map

    键值对

       

       

    是否包含某个对象,也是是否equal

    Collection中装的必须都是Object对象

       

    当对象在Map中作为键使用,当做引用时,使用hashCode判断是否相等,hashCode效率更高

    重写equal对象应该重写hashCode方法

       

    Iterator(迭代器)

    统一的遍历Collection中元素的方法(类似一个指针,指向元素的左边)

    返回值1.5之后是泛型E,1.5之前是Object

       

    增强for循环

       

       

    Set

    TreeSet用树实现的

    List(会不断的改变容量大小)

    常用算法

    binarySearch为二分法查找(折半查找)

       

    如何选择数据结构

    Array是数组,内存空间是连续的,直接偏移,读很快,改需要把前面的数据复制成新的数组,

    改完再复制回去,改的慢

    Linked是链表,内存空间不连续,读很慢,改直接更改链表的指向,改的块

    Hash基本不再使用了
     

    Map

       

    不能重复依然是比较equal,比较equal比较麻烦,一般比较hashcode比较方便

    put返回的object为通过key复制到原value后,原value返回所以使用object

  • 相关阅读:
    关于数据集的划分--训练集、验证集和测试集
    关于过拟合的问题总结
    paddle 09-13
    关于NLP多分类任务评价指标的总结
    数组题解
    多进程-协程
    多任务-进程
    多任务-线程
    网络-tcp
    网络-udp
  • 原文地址:https://www.cnblogs.com/ChengR/p/13047594.html
Copyright © 2011-2022 走看看