美文网首页
collections集合笔记总结

collections集合笔记总结

作者: 浮生岁月 | 来源:发表于2017-06-29 18:05 被阅读0次

    集合

    多个变量的集合体

    集合可以放多个元素 不定长

    ArrayList有序 可重复

    add()添加 元素

    add(int index, E element)将指定的元素插入此列表中的指定位置

    get()获取 索引位置的元素

    size()获取集合中元素个数

    remove(int index)移除此列表中指定位置上的元素。

    remove(Object o)移除o元素,

    removeAll(Collection c)

    移除此 collection 中那些也包含在指定 collection 中的所有元素

    contains(Object o)

    如果此 collection 包含指定的元素,则返回 true。

    clear()移除此列表中的所有元素。

    集合的结构图

    接口

    collection                  |                  Map

    List      |  Set            |

    ArrayList  HashSet  |  HashMap Hashtable

    LinkedList  TreeSet

    Vector

    Stack

    ArrayList 和LinkedList

    效率

    实际测试效果

    元素添加删除 耗时

    ArrayList  底层 object数组 访问效率高 操作效率首元素低

    LinkedList 底层 双向链表 操作效率首元素高 访问效率低

    Vector    底层

    List有序 可重复

    Set 无序 不可重复

    泛型

    限定 集合所能容纳的元素泛型

    Vector和ArrayList 区别

    Vector 线程安全

    ArrayList 线程不安全

    HashMap Hashtable区别

    null      不为空

    不安全      安全

    Stack 栈 先进后出 后进先出

    push 压栈

    pop  出栈

    peek 查看栈顶元素

    Set

    不可重复  hash值 不一样则对象不一样

    equals 方法

    无序 存入的顺序和取出的顺序不同

    List 是接口类型 ,可以定义对象引用,然后用他的实现类(比如 java.util.ArrayList java.util.LinkedList等)去初始化它,而不能new List()来初始化 ;

    Set 也类似

    Set集合遍历方式

    1.toString();

    转成Object[]

    2.for的增强型

    for(Object x:Set集合){

    }

    3.迭代器Iterator

    Iterator it=set集合.iterator();

    it.hashNext();//判断是否有元素

    it.next();//取值

    Collections.sort(list);

    将List 集合中的元素 升序排序

    注意 List 集合中的元素必须是 可比较的 Comparable

    Comparable

    int ComparTo(比较对象)对象比较值

    0    咱俩相等

    整数 我比你大

    负数 我比你小

    作业

    实现从大到小排序

    排序的第二种形式

    Compareator

    int compare(Object o,Object o1) 方法 定义 比较规则

    第一种形式 要求元素 必须实现Comparable

    第二种形式 第三方仲裁 比较规则 策略模式

    hm.keySet();//key set 集合

    hm.values();//value的集合

    hm.entrySet();//返回键值对的集合

    put(key,value);存值 将值以键值对形式保存

    get(key);取出key对应的value值

    keySet();返回key的value值

    values(); 返回value值的 collection集合。

    entrySet(); 返回Entry键值的 set集合。

    clear()  从此映射中移除所有映射关系。

    clone()  返回此 HashMap 实例的浅表复制:并不克隆键和值本身。

    containsKey(Object key)  如果此映射包含对于指定的键的映射关系,则返回 true。

    containsValue(Object value) 如果此映射将一个或多个键映射到指定值,则返回 true

    remove(Object key)  如果此映射中存在该键的映射关系,则将其删除。

    重要的东西

    基本用法

    数据结构

    key 不能重复 value后面覆盖前面

    HashMap 允许null key可以有一个 value可以任意个

    concurrent 线程同步

    Collections.synchronizedMap();//将hashMap变成安全的

    HashTable  HashMap

    1.是否安全    安全      不安全

    2.是否为空    不允许      允许

    相关文章

      网友评论

          本文标题:collections集合笔记总结

          本文链接:https://www.haomeiwen.com/subject/vduzqxtx.html