【Java】ArrayList 存储学生并使用Collections比较排序

2022/4/14 12:12:33

本文主要是介绍【Java】ArrayList 存储学生并使用Collections比较排序,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

package LearnJava7;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;

public class CollectionsDemo2 {
    public static void main(String[] args) {
        ArrayList<Student> array=new ArrayList<Student>();

        Student s1=new Student("xiaoA",21);
        Student s2=new Student("xiaoB",22);
        Student s3=new Student("xiaoC",23);
        Student s4=new Student("xiaoD",21);

        array.add(s1);
        array.add(s2);
        array.add(s3);
        array.add(s4);
//使用比较器排序
        Collections.sort(array, new Comparator<Student>() {
            @Override
            public int compare(Student s1, Student s2) {
//                按照年龄从小到大排列,年龄相同,按姓名排序
                int num = s1.getAge() - s2.getAge();
                int num2 = num == 0 ? s1.getName().compareTo(s2.getName()):num;
                return num2;
            }
        });
        for (Student s:array){
            System.out.println(s.getName()+","+s.getAge());
        }
    }
}



这篇关于【Java】ArrayList 存储学生并使用Collections比较排序的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程