此工具类是依据个人开发工程中常用到的处理方案做的汇总,目前还在更新迭代当中,文档还没书写,先简单的放一些初始版本,会持续更新,完善文档。
StringUtils
核心功能: 字符串分割,字符串判空,字符串转换list等。
示例:
字符判空 isEmpty(),字符串分割成数组 stringToList()
//结果 = true
String a = "";
System.out.println(StringUtils.isEmpty(a));
//结果 [1,2,3,4]
String str = "1,2,3,4";
System.out.println(StringUtils.stringToList(str,","));
工具类地址:StringUtils地址
DateTimeUtils
核心功能: 格式化日期,常见的类型转换locaDateTime,localDate,locaTime,
日期加减,大小比较等。
需要注意的是:DateFormat 总结了常用的 Format样式。
示例:
格式化 formatLocalDateTimeToString(), formatStringToLocalDate()
//结果 = 2023-08-30 15:29:11
LocalDateTime time = LocalDateTime.now();
System.out.println(DateTimeUtils.formatLocalDateTimeToString(time, DateFormat.yyyy_MM_dd_HH_mm_ss));
//结果 = 2023-08-30
LocalDate dateTime = LocalDate.now();
System.out.println(DateTimeUtils.formatLocalDateToString(dateTime,
DateFormat.yyyy_MM_dd));
//结果 = 01:01:01
LocalTime localTime = LocalTime.of(1,1,1);
System.out.println(DateTimeUtils.formatLocalTimeToString(localTime,DateFormat.hh_mm_ss));
工具类地址:DateTimeUtils
格式化总结地址:日期format样式总结
SplitTaskUtils
核心功能: 拆分任务大小,将大批量任务拆分成小块运行。
总结了几种不同的做法:
1.java手写
2.stream处理
3.guava处理
可以学习对比一下几种的差别。
示例:
拆分任务大小 getStaticTaskList(), getStaticStreamTaskList()
List<Integer> arrays = Arrays.asList(1,2,3,4,5);
//调用静态方法 分割任务大小 结果 = [[1, 2], [3, 4], [5]]
List<List<Integer>> result = SplitTaskUtils.getStaticGuavaTaskList(arrays,2);
System.out.println(result);
//自己构建SplitTaskUtils对象 结果 = [[1, 2], [3, 4], [5]]
SplitTaskUtils<Integer> splitTaskUtils = new SplitTaskUtils<>(2,arrays.size());
List<List<Integer>> re = splitTaskUtils.getGuavaTaskList(arrays);
System.out.println(re);
//分割之后返回map 结果 = {0=[1, 2], 1=[3, 4], 2=[5]}
Map<Integer, List<Integer>> map = splitTaskUtils.getTaskMap(arrays);
System.out.println(map);
工具地址: SplitTaskUtils
阅读原文档:guava文档地址
DynamicExpressionUtils
核心功能: 依据表达式处理得到相应结果。
示例:
依据表达式计算 executeInteger(), executeBigDecimalRound()
Map<String, Integer> env = new HashMap<>();
env.add("a",1);
env.add("b",1);
DynamicExpressionUtils.executeInteger("a+b",env)
//结果 1+1 = 2
工具地址: DynamicExpressionUtils
此工具类是对 Aviator 做的一个简单上手封装。
阅读原文档:Aviator
MagicValuePool
核心功能: 仅仅是对特殊字符做了一个总结,对开发过程使用的一个总结。
示例:
public interface MagicValuePool {
String AMPERSAND = "&";
String AND = "and";
String AT = "@";
String ASTERISK = "*";
String STAR = "*";
String BACK_SLASH = "\\";
String COLON = ":";
String COMMA = ",";
}
魔法值特殊字符地址:MagicValuePool
网友评论