码迷,mamicode.com
首页 > 编程语言 > 详细

基础笔记8(二)(容器-引用类型的排序)

时间:2016-12-20 07:31:01      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:长度   nts   swa   key   shu   随机   比较   public   hashcode   

1.类库中比较对象的大小实现了comparable接口的compateTo().

   已经实现了的如:integer,date,String(比较是每个字符的unicode编码大小,字符一样比较长度)

2.比较对象的两种方法:collections类提供的

1.public static <T extends Comparable<? super T>> void sort(List<T> list) {}
比较的对象实现
Comparable接口的comrateTo()比较方法,

2.
public static <T> void sort(List<T> list, Comparator<? super T> c) {}
另外编写两个对象的比较方法实现comparator接口的compate(),独立于比较的对象。

  Collections提供排序算法。

3.hashSet,treeSet对于集合自定义元素需要重写hashcode和equals方法以区别对象相等去重复。

4.有序的集合和map:TreeSet TreeMap  

4.1对于Tree容器是在添加元素时进行了排序,元素内容修改时候不会进行排序,并且可以修改产生相同数据。

构建TreeSet的集合的元素需要实现comparable接口,或者构建时候提供实现comparator接口的比较器。

构建TreeMap容器key也要已经实现接口,或者提供比较器(TreeSet其实也一种填充了value的TreeMap)

 

5.Collections的常用方法:

shuffle(List<?> list) 洗牌:随机打乱顺序

reverse(List<?> list)  反序

addAll(Collection<? super T> c, T... elements) 

swap(List<?> list, int i, int j) 交换数据

基础笔记8(二)(容器-引用类型的排序)

标签:长度   nts   swa   key   shu   随机   比较   public   hashcode   

原文地址:http://www.cnblogs.com/straybirds/p/6181769.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!