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

java的collections的sort的API

时间:2016-05-07 11:30:18      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:

这里是有关JAVA的collections的sort 的有关知识

一:

	import java.util.ArrayList;
	import java.util.Collections;
	import java.util.List;

	public class SortListDSemo2 {
		public static void main(String[] args) {

	    List<Point> list=new ArrayList<Point>();
	    	list.add(new Point(4,5));
	    	list.add(new Point(2,4));
	    	list.add(new Point(4,6));
	    	list.add(new Point(9,6));
	    	System.out.println(list);
	    	/*
	    	 * collections 的Sor方法要求排序的集合元素必须实现Comparable接口
	    	 * 该接口用于表示可比较 其提供了一个抽象方法comparaTo用于定义比较规则。
	    	 * 
	    	 */
	    	Collections.sort(list);
	    	System.out.println(list);
		}

	}


二:

import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
 
/**
 * collections的sort方法有两个不足:
 * 1:要求我们的集合元素必须实现comparable接口
 *	这样就对我们的类有较强的“侵入性”;
 * 2:有时集合元素实现了comparale接口并定义了比较大小的规则
 * 但是该规则不满组我们对排序的需求
 * collections提供了一个重载的sort方法:
 * static void sort(list list,comparable c)
 * 该重载方法要求我们传入一个额外的比较器
 * 按照比较器的规则来比较集合中的元素进行自然排序
 * @author soft01
 *
 */
public class Demo1 {
public static void main(String[] args) {
List<String> list=new ArrayList<String>();
list.add("小明语句16时19分05秒");
list.add("黎明");
list.add("窗前没有光");
System.out.println(list);
   MyComparator com=new MyComparator();
   Collections.sort(list,com);
   System.out.println(list);
   
}
}
class MyComparator implements Comparator<String>{
 
@Override
public int compare(String o1, String o2) {
return o1.length()-o2.length();
}
 
}

java的collections的sort的API

标签:

原文地址:http://blog.csdn.net/u012429555/article/details/51334144

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