【8.0】【rule】更新排序工具类

pull/57/head
fengshuonan 2023-08-03 15:17:34 +08:00
parent 1e7f0fac70
commit 34313ee01f
2 changed files with 63 additions and 0 deletions

View File

@ -0,0 +1,44 @@
package cn.stylefeng.roses.kernel.rule.util;
import cn.hutool.core.util.ObjectUtil;
import cn.stylefeng.roses.kernel.rule.util.sort.GetSortKey;
import java.util.LinkedList;
import java.util.List;
/**
*
* <p>
*
*
* @author fengshuonan
* @since 2023/8/3 14:43
*/
public class SortUtils {
/**
* listkeys
*
* @author fengshuonan
* @since 2023/8/3 14:44
*/
public static <T extends GetSortKey> List<T> sortListByObjectKey(List<T> originList, List<?> keys) {
if (ObjectUtil.isEmpty(originList) || ObjectUtil.isEmpty(keys)) {
return originList;
}
List<T> newSortList = new LinkedList<>();
for (Object key : keys) {
for (T listItem : originList) {
Object sortKey = listItem.getSortKey();
if (ObjectUtil.equal(key, sortKey)) {
newSortList.add(listItem);
}
}
}
return newSortList;
}
}

View File

@ -0,0 +1,19 @@
package cn.stylefeng.roses.kernel.rule.util.sort;
/**
* key
*
* @author fengshuonan
* @since 2023/8/3 14:42
*/
public interface GetSortKey {
/**
* Key
*
* @author fengshuonan
* @since 2023/8/3 14:42
*/
Object getSortKey();
}