Collections.sort()对对象进行排序
2008-03-02 01:35
357 查看
今天要对对象排序,平时用Map的时候很多本来要用treeMap来排序的,但是看到Collections.sort()也可以对对象排序所以就做个小测试记录下 ,以下是源代码 :
package cn.gumeng.spring.test;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.Random;
/** *//**
* 对象排序测试类
* @author Administrator
* @since 2008-03-01
*/
public class ObjectSort ...{
//需要排序的对象列表
ArrayList sortList = new ArrayList();
public static void main(String[] args)
...{
ObjectSort objSort = new ObjectSort();
//将对象初始化到列表中
objSort.initArrayList();
}
/** *//**
* 初始化对象到列表中,
* Collections.sort()可以对它的所有子类进行排序
*/
public void initArrayList()
...{
Random random = new Random();
for(int i = 0;i < 6;i++)
...{
Obj obj = new Obj();
obj.setName("大王"+i);
obj.setSex("男");
int value = random.nextInt(100-2*i-1);
obj.setDayTime(String.valueOf(value)+"00000");
sortList.add(obj);
System.out.println(obj.getDayTime());
}
sortArrayList();
}
/** *//**
* 调用Collections.sort()方法对对象进行排序
* 这里是是依据对象里的一个属性进行排序,这里设置升序排列
*/
public void sortArrayList()
...{
//匿名类来实现Comparator接口的compare方法,以此来排序
Collections.sort(sortList,new java.util.Comparator()...{
public int compare(Object object1, Object object2)...{
Obj obj1 = (Obj)object1;
Obj obj2 = (Obj)object2;
return obj1.getDayTime().compareTo(obj2.getDayTime());
}
});
//输出排序后的列表
for(int i =0 ;i < sortList.size();i++)
...{
System.out.println(((Obj)sortList.get(i)).toString());
}
}
/** *//**
* 内部类用来作为排序对象
* @author Administrator
* @since 2008-03-01
*/
class Obj...{
private String name;
private String sex;
private String dayTime;
public String getDayTime() ...{
return dayTime;
}
public void setDayTime(String dayTime) ...{
this.dayTime = dayTime;
}
public String getName() ...{
return name;
}
public void setName(String name) ...{
this.name = name;
}
public String getSex() ...{
return sex;
}
public void setSex(String sex) ...{
this.sex = sex;
}
public String toString() ...{
StringBuffer buf = new StringBuffer();
buf.append("[");
buf.append(this.getDayTime()+"_"+this.getName()+"_"+this.getSex());
buf.append("]");
return buf.toString();
}
}
}
记录一点学一点啊 !!
package cn.gumeng.spring.test;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.Random;
/** *//**
* 对象排序测试类
* @author Administrator
* @since 2008-03-01
*/
public class ObjectSort ...{
//需要排序的对象列表
ArrayList sortList = new ArrayList();
public static void main(String[] args)
...{
ObjectSort objSort = new ObjectSort();
//将对象初始化到列表中
objSort.initArrayList();
}
/** *//**
* 初始化对象到列表中,
* Collections.sort()可以对它的所有子类进行排序
*/
public void initArrayList()
...{
Random random = new Random();
for(int i = 0;i < 6;i++)
...{
Obj obj = new Obj();
obj.setName("大王"+i);
obj.setSex("男");
int value = random.nextInt(100-2*i-1);
obj.setDayTime(String.valueOf(value)+"00000");
sortList.add(obj);
System.out.println(obj.getDayTime());
}
sortArrayList();
}
/** *//**
* 调用Collections.sort()方法对对象进行排序
* 这里是是依据对象里的一个属性进行排序,这里设置升序排列
*/
public void sortArrayList()
...{
//匿名类来实现Comparator接口的compare方法,以此来排序
Collections.sort(sortList,new java.util.Comparator()...{
public int compare(Object object1, Object object2)...{
Obj obj1 = (Obj)object1;
Obj obj2 = (Obj)object2;
return obj1.getDayTime().compareTo(obj2.getDayTime());
}
});
//输出排序后的列表
for(int i =0 ;i < sortList.size();i++)
...{
System.out.println(((Obj)sortList.get(i)).toString());
}
}
/** *//**
* 内部类用来作为排序对象
* @author Administrator
* @since 2008-03-01
*/
class Obj...{
private String name;
private String sex;
private String dayTime;
public String getDayTime() ...{
return dayTime;
}
public void setDayTime(String dayTime) ...{
this.dayTime = dayTime;
}
public String getName() ...{
return name;
}
public void setName(String name) ...{
this.name = name;
}
public String getSex() ...{
return sex;
}
public void setSex(String sex) ...{
this.sex = sex;
}
public String toString() ...{
StringBuffer buf = new StringBuffer();
buf.append("[");
buf.append(this.getDayTime()+"_"+this.getName()+"_"+this.getSex());
buf.append("]");
return buf.toString();
}
}
}
记录一点学一点啊 !!
相关文章推荐
- 用java.util.Collections中的sort方法对两个类的对象进行排序
- 对于集合中的自定义对象使用collections.sort 进行排序,需要实现compartor接口
- 对集合中的对象进行排序,用collections.sort 到方法
- Arrays.sort()使用两种方式(Comparable和Comparator接口)对对象或者引用进行排序
- Collections.sort方法(可以根据集合中类的属性的比较对集合内的类进行排序)
- Java中应用Collections工具类的Sort()方法对List进行排序
- js sort方法根据数组中对象的某一个属性值进行排序
- Collections.sort()对list进行排序
- 对List数组进行排序 Collections.sort(param1,param2)
- JAVA对list集合进行排序Collections.sort()
- Collections.sort()对HashMap里的键值对按照键进行排序
- Collections.sort()使用自定义比较器进行排序
- Collections.sort()对HashMap里的键值对按照键进行排序
- 由多个Object(以Teacher为例)对象所形成的数组可以使用Arrays.sort方法进行排序(编号由低到高排序)。
- js sort方法根据数组中对象的某一个属性值进行排序
- js sort方法根据数组中对象的某一个属性值进行排序
- Java中,通过使用Collections.sort对ArrayList进行排序
- Java中使用Collections.sort()方法对数字和字符串泛型的LIst进行排序
- 用Collection.sort对 ArrayList容器中对象的id 进行排序
- Collections.sort对list进行排序