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());
                }
            }
    
        }
    }
  • 相关阅读:
    苹果信息推送服务(Apple Push Notification Service)使用总结
    Xcode 相关路径总结
    微信红包随机算法 OC
    Xcode真机测试could not find developer disk image解决方法
    字典转模型 重写初始化方法
    Xcode 写代码没有补全提示解决:删缓存及显示隐藏文件命令
    按位与、或、异或等运算方法
    OC语言@property @synthesize和id
    iOS开发—Quartz2D简单介绍
    iOS开发—CoreLocation定位服务
  • 原文地址:https://www.cnblogs.com/cxxjohnson/p/6257640.html
Copyright © 2011-2022 走看看