常常遇到数组排序的问题.比如我有一个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());
}
}
}
分享到:
相关推荐
java中对ArrayList进行排序的方法参考
用ArrayList实现的排序算法,希望对有需要的同学有帮助,如有错误请指出。JDK版本为1.7
ArrayList排序和遍历补充案例.java
036-sum-arraylist-bigdecimals-java8
Java 对象排序详解 本文主要关注排序Collection的ArrayList、HashSet、TreeSet,以及最后但并非最不重要的数组。
主要介绍了Java ArrayList的不同排序方法,感兴趣的小伙伴们可以参考一下
主要介绍了Java针对ArrayList自定义排序的2种实现方法,结合实例形式总结分析了Java操作ArrayList自定义排序的原理与相关实现技巧,需要的朋友可以参考下
以 List 接口对象(ArrayList)为基础建立一个通信录,要求通信录中必须含有编号、姓名, 性别、电话、地址、Email 等。实现该类并包含添加、删除、修改、按姓名查等几个方法。编写 主程序测试。 参考如下。
用java语言编写一个程序实现学员成绩管理,每个学员包括3门课的成绩,从键盘输入学员信息, 包括学号、姓名、三门课成绩,计算出学员的平均成绩,按照学员平均成绩由大到小排序 插入功能:在排序后的学员成绩表中...
NULL 博文链接:https://luoxiaohui-java.iteye.com/blog/1489685
主要介绍了java实现ArrayList根据存储对象排序功能,结合实例形式分析了java针对ArrayList的相关运算、排序操作技巧,需要的朋友可以参考下
// 构造多个person对象为排序提供数据 Person person = new Person(); person.setName("wtt"); person.setSex("男"); person.setAge(24); Person person1 = new Person(); person1.setName("wjj"); person1....
除非它是2的幂并且因为它是一个数组而不能填充,否则它不起作用bitonicSort2.java与bitonicSort.java相同,但是展示了当您尝试对非2的幂的数组进行排序时会发生什么finalBitonicSort.java使用ArrayList进行排序-允许...
本文通过代码示例给大家介绍java对arraylist排序,代码简洁易懂,感兴趣的朋友一起学习吧
主要介绍了java的arraylist排序示例,学习一下arraylist的用法,需要的朋友可以参考下
List<String> location=new ArrayList(); 一行代码轻松搞定混合排序问题 Collections.sort(location, new SortUtils(true));
目标: 使用 ArrayList 和 2D 数组搜索和排序。 对于本实验,您将需要: 1 个班级(您可以随意称呼它)将以下所有 3 个部分放在班级中。 一个“计数器”(您可以将其命名为计数器)变量,可以递增以从 1 到某个数字...
import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class SortTest { public static void main(String[] args)throws Exception { String[] strs2=new String[]{...
3、JAVA的数据类型及转换 4、JAVA运算符 5、JAVA控制语句结构 6、JAVA数组及查找和排序 7、JAVA面向对象之三大特性 8、JAVA面向对象之函数、堆和栈、访问修饰符 9、JAVA面向对象关键字 10、JAVA面向对象抽象...