List数组排序 ...

  • 利用Java中Collections函数的sort()方法进行排序
    Collections在java.util包中
  • sort() 中需要写2个参数
    • 1 要排序的list数组
    • 2 要排序的函数的实例 这个函数要实现Comparator,Serializable这两个接口

排序函数的需要自己编写

按自己需要的字段进行排序

如下 我自己写的一个函数

package com.hanweb.blf.front;

import java.io.Serializable;
import java.util.Comparator;

import com.hanweb.entity.vo.MailStatVO;

public class OrderGroupComparator implements Comparator,Serializable{


    public OrderGroupComparator() {
        super();
        // TODO Auto-generated constructor stub
    }

    @Override
    //这两个参数你不要管 就实数组中前后2个值进行比较
    public int compare(Object o1, Object o2) {
        // 因为类型是Object 所以要转换成自己需要比较的类型 然后进行比较
        int p1 = 0;  
        int p2 = 0;
        if ((o1 instanceof MailStatVO))
        {
        //这里就是转换成 数据本身的类型 MailStatVO 这个类就是需要比较的 List<T> 中的T  所谓的泛型中的类型  我的是List<MailStatVO >你自己转换成自己的类型
          MailStatVO v1 = (MailStatVO)o1;
          MailStatVO v2 = (MailStatVO)o2;
       //然后获取自己所需比较字段 进行排序
          p1 = v1.getI_order();
          p2 = v2.getI_order();
        }
        // 比较字段大小比较 升序 还是倒序 就是好大于号 小于号来实现的 自己可以尝试下  返回值 1  是交换  0 是不交换顺序
        if (p1 > p2) {
          return 1;
        }
        return 0;
    }

}
这个就是调用 进行数组排序
List<MailStatVO> al = new ArrayList();
Comparator order=new OrderGroupComparator();
Collections.sort(al, order);

转载于:https://www.cnblogs.com/xzcl/p/7133980.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值