美文网首页
Java (集合 List)

Java (集合 List)

作者: x曦月y | 来源:发表于2016-07-29 20:01 被阅读18次


    1.对比Arraylist (插入顺序)和 LinkedList(插入顺序) 特性:

    ArrayList(末尾附近不包括末尾添加时速度快18:901)删除和添加元素速度比较快。

    LinkedList(从开头添加元素快6:4484)删除和添加元素速度快。

    2.set 和 list 的区别:

    ①、set是无序的,list是有序的。

    ②、set中数组的元素是不可重复的。list可重复。

    3. Comparable 和 Comparator 的区别 ( 排序 ):

    Comparable :一个实现了comparable 接口的对象的实例可以被用于和相同对象的不同实例作比较,他本身实现java.lang.comparable.

    Comparator:一个实现了comparator接口对象能够对比不同的对象,他不能用于同一个类的不同实例的对比,但是可以用于其他类的实例作比较必须实java.lang.comparator.

    4.CompareTo 和 Compare ( ) 方法: 

    ①、compareTo(Object o)方法是java.lang.Comparable接口中的方法,当需要对某个类的对象进行排序时,该类需要实现Comparable接口的,必须重写public int compareTo(T o)方法,比如MapReduce中Map函数和Reduce函数处理的,其中需要根据key对键值对进行排序,所以,key实现了WritableComparable接口,实现这个接口可同时用于序列化和反序列化。

    WritableComparable接口(用于序列化和反序列化)是Writable接口和Comparable接口的组合;②、compare(Object o1,Object o2)方法是java.util.Comparator接口的方法,它实际上用的是待比较对象的compareTo(Object o)方法。

    相关文章

      网友评论

          本文标题:Java (集合 List)

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