zoukankan      html  css  js  c++  java
  • java Collections.sort()实现List排序自定义方法

    方法一:

    package testSimple;
    
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.Comparator;
    import java.util.List;
    
    public class testCollectionSort {
        public static void main(String[] args) {
            List<TblPowerGroup> list = new ArrayList<TblPowerGroup>();
            list.add(new TblPowerGroup("100001", "cxx1"));
            list.add(new TblPowerGroup("100002", "cxx2"));
            list.add(new TblPowerGroup("100003", "cxx6"));
            list.add(new TblPowerGroup("100003", "cxx5"));
            list.add(new TblPowerGroup("100004", "cxx5"));
            list.add(new TblPowerGroup("100004", "cxx6"));
            Collections.sort(list, new Comparator<TblPowerGroup>() {
    
                @Override
                public int compare(TblPowerGroup o1, TblPowerGroup o2) {
                    if (o1.getGroupSn().compareTo(o2.getGroupSn()) == 0) {
                        return o1.getNodeName().compareTo(o2.getNodeName());
                    } else {
                        return o1.getGroupSn().compareTo(o2.getGroupSn());
                    }
                }
    
            });
            System.out.println(list);
        }
    }
    
    class TblPowerGroup {
        private String groupSn;
        private String nodeName;
    
        public TblPowerGroup(String groupSn, String nodeName) {
            super();
            this.groupSn = groupSn;
            this.nodeName = nodeName;
        }
    
        public String getGroupSn() {
            return groupSn;
        }
    
        public void setGroupSn(String groupSn) {
            this.groupSn = groupSn;
        }
    
        public String getNodeName() {
            return nodeName;
        }
    
        public void setNodeName(String nodeName) {
            this.nodeName = nodeName;
        }
    
        @Override
        public String toString() {
            return "TblPowerGroup [groupSn=" + groupSn + ", nodeName=" + nodeName
                    + "]";
        }
    
    }

    方法二:

    package testSimple;
    
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.Comparator;
    import java.util.List;
    
    public class testCollectionSort2 {
        public static void main(String[] args) {
            List<TblPowerGroup> list = new ArrayList<TblPowerGroup>();
            list.add(new TblPowerGroup("100001", "cxx1"));
            list.add(new TblPowerGroup("100002", "cxx2"));
            list.add(new TblPowerGroup("100003", "cxx6"));
            list.add(new TblPowerGroup("100003", "cxx5"));
            list.add(new TblPowerGroup("100004", "cxx5"));
            list.add(new TblPowerGroup("100004", "cxx6"));
            Collections.sort(list, new TblPowerGroupSort());
            System.out.println(list);
        }
    
        private static class TblPowerGroupSort implements Comparator<TblPowerGroup> {
    
            @Override
            public int compare(TblPowerGroup o1, TblPowerGroup o2) {
                if (o1.getGroupSn().compareTo(o2.getGroupSn()) == 0) {
                    return o1.getNodeName().compareTo(o2.getNodeName());
                } else {
                    return o1.getGroupSn().compareTo(o2.getGroupSn());
                }
            }
    
        }
    }
  • 相关阅读:
    Red Hat Enterprise Linux 7的新功能
    Unix/Linux环境C编程入门教程(41) C语言库函数的文件操作详解
    Unix/Linux环境C编程入门教程(40) 初识文件操作
    hadoop 1.2.1 安装步骤 伪分布式
    heritrix 3.2.0 -- 环境搭建
    nyoj301递推求值
    nyoj301递推求值
    luogu1962斐波那契数列
    矩阵快速幂模板
    矩阵快速幂模板
  • 原文地址:https://www.cnblogs.com/cxxjohnson/p/6257640.html
Copyright © 2011-2022 走看看