为了按内容来比较属于同一类型的两个对象的“大小”,JDK中定义了一个Comparable接口用于供程序员自定义两个对象的比较规则,此接口声明如下: public interface Comparable { int compareTo(Object other); } 实现了此接口的两个对象(不妨称之为X和Y)可以相互比较:两对象X和Y相等,compareTo()方法返回0,X小于Y时compareTo()方法返回一个负数(通常设为-1),X大于Y时返回正数(通常设为1)。 编写一个方法,接收一个Comparable对象数组作为参数,然后,此方法对此数组中的对象进行升序排列。
解决方案 »
- 垃圾的hibernate
- 想查看硬盘上的某一类型的所有文件该怎么做?比log文件
- 关于从List中取数据时Iterator与get速度问题.附测试代码
- Tomcat 自动关闭问题: hs_err_pid5200.log
- hibernate 3.2 长文本保存 乱码,短文件存储正常
- servlet httpservlet genericservlet之间的关系
- 我用JNI VC做了个连接数据库的DLL,在VC中测试能连接数据库,可用JAVA调就出错
- 求大神进来看看!
- 哪位能说说javax.xml.transform包中的东西怎么用?
- tomcat下截图黑屏
- struts2.1.8中FilterDispatcher过时为什么
- Struts Hibernate 异常 list action
Arrays.sort(objs);
Arrays.sort(objs);同时,Arrays工具类通过重载技术,可以支持所有类型数组的排序功能。可以查看一下JDK API的帮助
http://gceclub.sun.com.cn/Java_Docs/jdk6/html/zh_CN/api/index.html
import java.util.Arrays;
public class TestComp{ public static void main(String[] args){
Dogs d1 = new Dogs("wangwang",1);
Dogs d2 = new Dogs("xiaoke",3);
Dogs[] dogs = new Dogs[2];
dogs[0] = d1;
dogs[1] = d2;
Arrays.sort(dogs);
System.out.println(Arrays.asList(dogs));
}
}class Dogs implements Comparable{
private String username;
private int age; public Dogs(String username,int age){
this.username=username;
this.age=age;
} public int compareTo(Object o){
return this.age-((Dogs)o).age;
} public String toString(){
return username+":"+age;
}
}