Java 常用功能代码片段(获取当前年份、SpringBoot资源读取方式和类资源读取方式、Date日期大小比较、List 集合删除重复数据)解析
虾米姐
阅读:602
2021-03-31 16:51:11
评论:0
1、获取当前年份
实现方式一:SimpleDateFormat + Date
public static String getCurrentYear(){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy");
Date date = new Date();
return sdf.format(date);
}
实现方式二:Calendar
public static String getCurrentYear() {
Calendar date = Calendar.getInstance();
String year = String.valueOf(date.get(Calendar.YEAR));
return year;
}
2、读取资源的实现方式:springboot + 类
实现方式一:spring Boot 读取资源方式:
FileInputStream inputStream = new FileInputStream(ResourceUtils.getFile("classpath:***.xml")
注意:如果是在多模块java项目中不推荐使用,因为ResourceUtils 加载资源类是依据当前执行的线程获取,如果你编写的模块要被打包成jar 包供其他业务模块的调用,会导致读取的资源文件无法找到,所以建议不推荐使用。
实现方式二: 当前类读取资源方式
FileInputStream inputStream = (FileInputStream)Confing.class.getClassLoader().getResourceAsStream(xmlName)
注意:推荐使用
3、比较日期大小
// 最近一次错误登记日期
Date lockDate = Collections.max(
list.stream().map(item ->{
JSONObject jsonObject = JSONObject.parseObject(item);
return new Date((long)jsonObject.get("createdDt"));
}).collect(Collectors.toList())
);
// 解锁日期
Calendar unLockDate = Calendar.getInstance();
unLockDate.setTime(lockDate);
unLockDate.add(Calendar.MINUTE, 5);
// 判断解锁时间是否当前时间之前
if(unLockDate.getTime().getTime() > new Date().getTime()){
return false;
} else {
return true;
}
4、Java 8 Stream List集合删除重复元素
List<Integer> list = Lists.newArrayList(1, 2, 2, 2, 5);
list = list.stream().distinct().collect(Collectors.toList());
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。