ArrayList对对象中某属性排序
来源:互联网 发布:温和祛痘洗面奶知乎 编辑:程序博客网 时间:2024/05/18 07:11
import java.io.*;
import java.math.*;
import java.util.*;
import java.text.*;
class Student{
int age;
int id;
String gender;
String name;
String cs;
Student(int id,String name,String gender,int age,String cs){
this.age=age;
this.name=name;
this.gender=gender;
this.id=id;
this.cs=cs;
}
public String toString(){
return id+" "+name+" "+gender+" "+age+" "+cs;
}
}
public class Main {
public static void main(String[] args) {
Comparator<Student> comparator = new Comparator<Student>(){
public int compare(Student s1, Student s2) {
//先排年龄
if(s1.age!=s2.age){
return s1.age-s2.age;
}
else{
//年龄相同则按姓名排序
if(!s1.name.equals(s2.name)){
return s1.name.compareTo(s2.name);
}
else{
//姓名也相同则按学号排序
return s1.id-s2.id;
}
}
}
};
Student stu1 = new Student (1,"zhangsan","male",28,"cs");
Student stu2 = new Student (2,"lisi","female",19,"cs");
Student stu3 = new Student (3,"wangwu","male",22,"cs");
Student stu4 = new Student (4,"zhaoliu","female",17,"cs");
Student stu5 = new Student (5,"jiaoming","male",22,"cs");
ArrayList<Student> List = new ArrayList<Student>();
List.add(stu1);
List.add(stu2);
List.add(stu3);
List.add(stu4);
List.add(stu5);
//这里就会自动根据规则进行排序
Collections.sort(List,comparator);
display(List);
}
static void display(ArrayList<Student> lst){
for(Student s:lst)
System.out.println(s);
}
}
import java.math.*;
import java.util.*;
import java.text.*;
class Student{
int age;
int id;
String gender;
String name;
String cs;
Student(int id,String name,String gender,int age,String cs){
this.age=age;
this.name=name;
this.gender=gender;
this.id=id;
this.cs=cs;
}
public String toString(){
return id+" "+name+" "+gender+" "+age+" "+cs;
}
}
public class Main {
public static void main(String[] args) {
Comparator<Student> comparator = new Comparator<Student>(){
public int compare(Student s1, Student s2) {
//先排年龄
if(s1.age!=s2.age){
return s1.age-s2.age;
}
else{
//年龄相同则按姓名排序
if(!s1.name.equals(s2.name)){
return s1.name.compareTo(s2.name);
}
else{
//姓名也相同则按学号排序
return s1.id-s2.id;
}
}
}
};
Student stu1 = new Student (1,"zhangsan","male",28,"cs");
Student stu2 = new Student (2,"lisi","female",19,"cs");
Student stu3 = new Student (3,"wangwu","male",22,"cs");
Student stu4 = new Student (4,"zhaoliu","female",17,"cs");
Student stu5 = new Student (5,"jiaoming","male",22,"cs");
ArrayList<Student> List = new ArrayList<Student>();
List.add(stu1);
List.add(stu2);
List.add(stu3);
List.add(stu4);
List.add(stu5);
//这里就会自动根据规则进行排序
Collections.sort(List,comparator);
display(List);
}
static void display(ArrayList<Student> lst){
for(Student s:lst)
System.out.println(s);
}
}
0 0
- ArrayList对对象中某属性排序
- JAVA 用ArrayList对对象中某属性排序
- JAVA 用ArrayList对对象中某属性排序
- 对对象的某些属性进行排序
- java List对对象的属性排序
- 对对象按对象的某个属性进行排序
- 根据List里面的对象属性对对象排序
- ArrayList 根据某一属性排序
- 根据ArrayList 中对象的属性排序
- ArrayList里的对象按照属性排序
- Java对对象按照其属性排序的两种方法
- 对对onreadystatechange属性的理解
- STL对对象的排序
- Java列表对对象排序
- 利用compare对对象排序
- 排序(对对象进行排序)二
- 【资料】Arraylist中根据指定元素属性排序
- ArrayList实现根据某属性大小相间排序
- 机器翻译(待续)
- ERROR: Can't get master address from ZooKeeper; znode data == null
- 求取圆内整数点(格点)的算法
- Android Animation 基础介绍 和例子
- Maven基础——实战篇
- ArrayList对对象中某属性排序
- SAP LSMW(摘自官网)
- [LeetCode]Best Time to Buy and Sell Stock II
- 9.1 改进以数据为中心的应用程序
- MOTO巨屏旗舰曝光 5.9英寸屏+4GB大内存
- ios简单画图显示
- 内存中堆区和栈区的区别
- 加入一家创业公司之前要考虑什么?
- 如何在Windows的cmd下让程序在后台执行?