站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Java 专题ArrayList中的数据排序--java对象排序

ArrayList中的数据排序--java对象排序

摘要: ArrayList中的数据排序--java对象排序

</td> </tr> <tr> <td width="471" height="35" valign="top" class="ArticleTeitle"> 常常遇到数组排序的问题.比如我有一个Person类,它的实例对象存储在ArrayList
数组中, 现在要把ArrayList数组中的Person对象按照年龄排序。其实这种情况经常遇到。
下面给出源代码:

1:Person.java文件:
public class Person{ String name; int age; public Person(String name,int age){ this.name = name; this.age = age; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } } 2:Mycomparator.java //实现Comparator接口,也就是定义排序规则,你几乎可以定义任何规则 import java.util.*; public class Mycomparator implements Comparator{ public int compare(Object o1,Object o2) { Person p1=(Person)o1; Person p2=(Person)o2;
if(p1.age return 1;
else if(p1.age>p2.age)
return -1;
else
return 0;
}

}


3:ListSort.java------------------------------------

import java.util.ArrayList;

import java.util.Collections;

import java.util.Comparator;

public class ListSort {

 public static void main(String[] args){

  ArrayList list = new ArrayList();

  list.add(new Person("lcl",28));

  list.add(new Person("fx",23));

  list.add(new Person("wqx",29));

  Comparator comp = new Mycomparator();

  Collections.sort(list,comp); 

  for(int i = 0;i   Person p = (Person)list.get(i);
System.out.println(p.getName());
}

}
} 运行结果:
C:\java>java ListSort
wqx
lcl
fx

C:\java>


特此存档,也希望对兄弟们有帮助.
</td> <td width="213" valign="top" class="ArticleTeitle">
</td> </tr> <tr> <td height="25" colspan="2" valign="top" class="ArticleTeitle">


↑返回目录
前一篇: Ant实践
后一篇: 在应用程序中连接mysql