zoukankan      html  css  js  c++  java
  • 如何实现对ArrayList排序 sort()

    package com.collection;

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

    public class Test {
         public static void main(String[] args) {

              Student zlj = new Student("丁晓宇", 21);
              Student dxy = new Student("赵四", 22);
              Student cjc = new Student("张三", 11);
              Student lgc = new Student("刘武", 19);

              List<Student> studentList = new ArrayList<Student>();
              studentList.add(zlj);
              studentList.add(dxy);
              studentList.add(cjc);
              studentList.add(lgc);

              System.out.println("按年龄升序:");
              Collections.sort(studentList, new SortByAge());
              for (Student student : studentList) {
               System.out.println(student.getName() + " / " + student.getAge());
              }
              System.out.println();
              System.out.println("按姓名排序:");
              Collections.sort(studentList, new SortByName());
              for (Student student : studentList) {
               System.out.println(student.getName() + " / " + student.getAge());
              }
             }
            }

            class SortByAge implements Comparator {
             public int compare(Object o1, Object o2) {
              Student s1 = (Student) o1;
              Student s2 = (Student) o2;
             if (s1.getAge() > s2.getAge())
               return 1;
              return -1;
             }
            }

            class SortByName implements Comparator {
             public int compare(Object o1, Object o2) {
              Student s1 = (Student) o1;
              Student s2 = (Student) o2;
              return s1.getName().compareTo(s2.getName());
             }
    }

    输出结果:

    按年龄升序:
    张三 / 11
    刘武 / 19
    丁晓宇 / 21
    赵四 / 22

    按姓名排序:
    丁晓宇 / 21
    刘武 / 19
    张三 / 11
    赵四 / 22

  • 相关阅读:
    mybatis Result Maps collection already contains value for com.ebways.dictionary.dao.impl.PtInfoDaoImpl.beanMap
    spring mvc 重定向加传参
    http apr 8080 exec 3解决
    jsp调用java方法 function taglib
    java读取xml文件
    jsp自定义标签(时间格式化包括Long转时间)
    JAVA-JSP内置对象之request获得所有的参数名称
    JAVA-JSP内置对象之request对象参数
    JAVA-JSP内置对象之移除属性
    JAVA-JSP内置对象之application范围
  • 原文地址:https://www.cnblogs.com/renjiaqi/p/6429649.html
Copyright © 2011-2022 走看看