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

王朝java/jsp·作者佚名  2006-01-09
宽屏版  字体: |||超大  

常常遇到数组排序的问题.比如我有一个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接口,也就是定义排序规则,你几乎可以定义任何规则

package com.infoearth;

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<p2.age)

return 1;

else

return 0;

}

}

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

package com.infoearth;

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<list.size();i++){

Person p = (Person)list.get(i);

System.out.println(p.getName());

}

}

}

特此存档,也希望对兄弟们有帮助.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有