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());
                }
            }
    
        }
    }
  • 相关阅读:
    博客园安卓客户端合仔茶版本V4.0震撼发布
    提示功能的检索框
    .net 玩自动化浏览器
    《表单篇》DataBase之大数据量经验总结
    自定义表主键
    一次网络程序Debug过程
    关于.NET下开源及商业图像处理(PSD)组件
    利用反射从程序集dll中动态调用方法
    Linux内核源码分析方法
    wcf基础教程之 契约(合同)Contract
  • 原文地址:https://www.cnblogs.com/cxxjohnson/p/6257640.html
Copyright © 2011-2022 走看看