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

    Java大部分集合类是由Collection接口和Map<K,V>接口衍生而来。

      Collection接口:

        List<E>、Set<E>、SortedSet<E>、Queue<E>

          List接口:ArrayList、LinkedList、Vector

          Set接口:HashSet、EnumSet

          Set接口的子接口:Sorted<E>、TreeSet

      Map<key,value>接口:TreeMap、HashMap、Hashtable、EnumMap

      接口Iterable(迭代器)提供了iterator()方法,用于遍历集合中的所有元素。

      LinkedList:

            一种链表结构,在集合中间位置进行数据的插入或删除效果很好。(相关元素只需要更新地址),提供了队列、堆栈结构的一种实现。

    LinkedList<String> strs = new LinkedList<String>();
    strs.add("xxx");

     

      ArrayList:

            一种数组结构,对于随机访问get和set效率较高,插入或删除较差(相关元素都需要挪位置)。

    List<String> elements=new ArrayList<String>();
            elements.add("xxx");


    List的特点:
      有序、可以存放重复元素、异步、线程不安全。(Collections提供了相关synchronizedList同步方法。异步->同步。)

     

      HashSet:

        无序、不能重复、异步、线程不安全。

    Set<String> s = new HashSet<String>();
    s.add("a");

     

        自定义对象判断是否相同的规则:

          首先比较两个对象的hashCode是否相同,如果相同再调用其equals,根据返回值true或者false判断是否相同。
      TreeSet:

        有序、不能重复

    Set<String> s = new TreeSet<String>();
    s.add("11");

        集合中的元素实现Comparable接口,或者提供比较器Comparator,对集合中的元素进行排序。

        自定义对象的排序:实现Comparable接口中的compareTo()方法。

     

  • 相关阅读:
    js分享插件
    json格式
    事物TransactionScope
    CheckBox全选、取消全选
    JQuery中的prop和attr
    [转]javascript之数组操作
    pcntl_fork()函数说明
    从库因为sql错误导致主从同步被中断的问题解决
    查看进程的命令ps
    给mysql创建用户
  • 原文地址:https://www.cnblogs.com/ziyouqingfeng/p/4918733.html
Copyright © 2011-2022 走看看