对比新文件 |
| | |
| | | package com.gk.firework.Domain.Vo; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.Collections; |
| | | import java.util.List; |
| | | import java.lang.reflect.Field; |
| | | import java.util.Comparator; |
| | | |
| | | |
| | | public class SortData { |
| | | public List<?> sortByInt(List<?> list, final String param ,Byte order){ |
| | | //自定义Comparator对象,自定义排序 |
| | | Comparator c = new Comparator() { |
| | | @Override |
| | | public int compare(Object o1, Object o2) { |
| | | try { |
| | | Field field1 = o1.getClass().getDeclaredField(param); |
| | | Field field2 = o2.getClass().getDeclaredField(param); |
| | | field1.setAccessible(true); |
| | | field2.setAccessible(true); |
| | | // if(null == field1.get(o1) || null == field2.get(o2)){ |
| | | // return 0; |
| | | // } |
| | | if((Integer)field1.get(o1)<(Integer)field2.get(o2)){ |
| | | return 1; |
| | | }else if((Integer)field1.get(o1)>(Integer)field2.get(o2)){ |
| | | return -1; |
| | | }else { |
| | | return 0; |
| | | } |
| | | //注意!!返回值必须是一对相反数,否则无效。jdk1.7以后就是这样。 |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | return 1; |
| | | } |
| | | }; |
| | | if(order == 1){ |
| | | Collections.sort(list, c); |
| | | }else { |
| | | Collections.sort(list, c.reversed()); |
| | | } |
| | | |
| | | return list; |
| | | } |
| | | |
| | | public List<?> Pagination(Integer pageNum, Integer pageSize, List<?> dataList) { |
| | | Integer totalCount = dataList.size(); |
| | | List<?> result = new ArrayList<>(); |
| | | if (pageSize != null) { |
| | | // 默认页面大小为10 |
| | | pageSize = pageSize > 0 ? pageSize : 10; |
| | | } |
| | | if (pageNum != null) { |
| | | pageNum = pageNum > 0 ? pageNum : 0; |
| | | } |
| | | |
| | | Integer beginindex = (pageNum-1)*pageSize; |
| | | Integer endindex = pageNum * pageSize < totalCount ? pageNum * pageSize : totalCount; |
| | | |
| | | result = dataList.subList(beginindex,endindex); |
| | | return result; |
| | | } |
| | | |
| | | } |