zoukankan      html  css  js  c++  java
  • Java中的集合排序

    1. 定义排序

    class ComparatorDefault implements Comparator {
            public int compare(Object arg0, Object arg1) {
                OrderDetailReturn.BidsEntity bid0 = (OrderDetailReturn.BidsEntity) arg0;
                OrderDetailReturn.BidsEntity bid1 = (OrderDetailReturn.BidsEntity) arg1;
                //按ID排序
                return bid0.getId() - bid1.getId();
            }
        }
    
        class ComparatorCredit implements Comparator {
            public int compare(Object arg0, Object arg1) {
                OrderDetailReturn.BidsEntity bid0 = (OrderDetailReturn.BidsEntity) arg0;
                OrderDetailReturn.BidsEntity bid1 = (OrderDetailReturn.BidsEntity) arg1;
                //按ID排序
                if (bid0.getBearer() == null || bid1.getBearer() == null) return 0;
                return bid0.getBearer().getScore() - bid1.getBearer().getScore();
            }
        }
    
        class ComparatorPrice implements Comparator {
            public int compare(Object arg0, Object arg1) {
                OrderDetailReturn.BidsEntity bid0 = (OrderDetailReturn.BidsEntity) arg0;
                OrderDetailReturn.BidsEntity bid1 = (OrderDetailReturn.BidsEntity) arg1;
                //按ID排序
                return bid0.getPrice() - bid1.getPrice();
            }
        }

    2. 调用排序

    if(bidList == null) return;
            Comparator comparator;
            if (style == 1) {
                comparator = new ComparatorCredit();
            } else if (style == 2) {
                comparator = new ComparatorPrice();
            } else {
                comparator = new ComparatorDefault();
            }
            Collections.sort(bidList, comparator);
  • 相关阅读:
    final、static关键字
    this关键字与super关键字区别
    JAVA常见报错
    Java抽象类和多态
    Java 类和接口的继承
    JAVA封装
    库存管理案例
    Map的遍历
    LinkedList vector集合,Set接口
    Collection,迭代器iterator,list接口
  • 原文地址:https://www.cnblogs.com/atwind/p/4633040.html
Copyright © 2011-2022 走看看