Comparator()太难了,谁能用简单的话让我明白阿!! 难死我了,还能再难一点不,这个东西。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 参考:import java.util.Comparator;import java.util.ArrayList; public class Demo{ public static void main(String[] args){ User u1 =new User("aaa",12); User u2 =new User("ddd",10); User u3 =new User("ccc",20); User u4 =new User("bbb",10); ArrayList arrayList = new ArrayList(); arrayList.add(u1); arrayList.add(u2); arrayList.add(u3); arrayList.add(u4); Object[] users =arrayList.toArray(); System.out.println ("排序前。"); for (int i = 0; i<users.length; i++){ System.out.println (users[i]); } System.out.println ("*******************************"); System.out.println ("排序后。。"); //把排序规则交给sort方法。该方法就回按照你自定义的规则进行排序 java.util.Arrays.sort(users,new MyComparator()); for (int i = 0; i<users.length; i++){ System.out.println (users[i]); } }}class User{ String name; int age ; public User(String name,int age){ this.name = name; this.age = age; } public String toString(){ return name+":::"+age; } }class MyComparator implements Comparator{ public int compare(Object obj1, Object obj2 ){ User u1 = (User)obj1; User u2 = (User)obj2; if(u1.age>u2.age){ return 1; }else if(u1.age<u2.age){ return -1; }else{ //利用String自身的排序方法。 //如果年龄相同就按名字进行排序 return u1.name.compareTo(u2.name); } }} 你说的是Comparator接口对吧,关于它和 Conparable的比较请看这里http://blog.csdn.net/anqini/archive/2008/04/27/2335636.aspx它是一个灵活的比较构造器,相对于Conparable的comparaTo是灵活的! java基础 HTTP 连接,获取URL 资源的数据大小,求助~~ Swing 中JList 获取 focus java gui得问题,麻烦各位看看 java里面图片的路径是不是这样写的?怎么显示不出来呢. 如何制作一个查询程序的界面? 急! 有谁知道如何根据当前日期(年月日)推出几天后的日期(年月日)的算法 提问,我编写的Applet问题 关于下溯造型的一个问题 JfreeChart鼠标事件的问题 使用poi对word进行操作的问题
import java.util.ArrayList; public class Demo{
public static void main(String[] args){
User u1 =new User("aaa",12);
User u2 =new User("ddd",10);
User u3 =new User("ccc",20);
User u4 =new User("bbb",10);
ArrayList arrayList = new ArrayList();
arrayList.add(u1);
arrayList.add(u2);
arrayList.add(u3);
arrayList.add(u4);
Object[] users =arrayList.toArray();
System.out.println ("排序前。");
for (int i = 0; i<users.length; i++){
System.out.println (users[i]);
}
System.out.println ("*******************************");
System.out.println ("排序后。。");
//把排序规则交给sort方法。该方法就回按照你自定义的规则进行排序
java.util.Arrays.sort(users,new MyComparator());
for (int i = 0; i<users.length; i++){
System.out.println (users[i]);
}
}
}class User{
String name;
int age ;
public User(String name,int age){
this.name = name;
this.age = age;
}
public String toString(){
return name+":::"+age;
}
}
class MyComparator implements Comparator{
public int compare(Object obj1, Object obj2 ){
User u1 = (User)obj1;
User u2 = (User)obj2;
if(u1.age>u2.age){
return 1;
}else if(u1.age<u2.age){
return -1;
}else{
//利用String自身的排序方法。
//如果年龄相同就按名字进行排序
return u1.name.compareTo(u2.name);
}
}
}
http://blog.csdn.net/anqini/archive/2008/04/27/2335636.aspx
它是一个灵活的比较构造器,相对于Conparable的comparaTo是灵活的!