刚开始写代码遇到的小问题
2021-07-12创建;
2021-07-14更新;
Date不能字符串判空
<if test="null != updateTime ">update_time = #{updateTime},</if>
<if test="null != updateUser and '' != updateUser">update_user = #{updateUser}</if>
insert 失败 实体类里没有XXX属性
<if test="null != userName and '' != userName">
user_name,
</if>
<if test="null != status and '' != status">
status,
</if>
检查 userName 是否写成了 user_name
lombok.Data 存在却找不到包
勾选这个
Queue 队列不能用For循环来遍历&&并集
因为Queue的size是一直变化的。
所以加个这个就行了。
List list =listOne;
// 并集 去重
public List<SxEleOrder> findUnion(List<SxEleOrder> listOne,Queue<SxEleOrder> listTwo){
List<SxEleOrder> list =listOne;
int tempSize = listTwo.size();
for(int i=0;i<tempSize;i++){
list.add(listTwo.poll());
}
List<SxEleOrder> resultList = list.stream().filter(distinctByKey(b -> b.getId())).collect(Collectors.toList());
return resultList;
}
public static <T> Predicate<T> distinctByKey(Function<? super T, Object> keyExtractor) {
Map<Object, Boolean> seen = new ConcurrentHashMap<>();
return t -> seen.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) == null;
}
// 这个方式报错
for (SxEleOrder sxEleOrder:listTwo) {
list.add(listTwo.poll()); ~~
~~ }
传参的时候最好不要传原来的队列,最好复制一份
Queue<SxEleOrder> tempQueue = new LinkedList<SxEleOrder>(uList);
LinkedList<SxEleOrder> TempSlots = new LinkedList<SxEleOrder>(slots);
List<SxEleOrder> addList = findUnion(TempSlots, tempQueue);
求补集&&List和LinkedList互转
public LinkedList<SxEleOrder> distinctByUniqueList(List<SxEleOrder> oListOne ,List<SxEleOrder> oListTwo){
List<SxEleOrder> tempList = oListOne.stream()
.filter(item -> !oListTwo.stream()
.map(e -> e.getId())
.collect(Collectors.toList())
.contains(item.getId()))
.collect(Collectors.toList());
LinkedList<SxEleOrder> distinctList = new LinkedList<SxEleOrder>();
for (SxEleOrder sxEleOrder : tempList) {
distinctList.add(sxEleOrder);
}
return distinctList;
}
加减法和判断是否大于0
public void test_bigdecimal(){
BigDecimal bnum1, bnum2;
bnum1 = new BigDecimal("30");
bnum2 = new BigDecimal("30");
if (bnum1.subtract(bnum2).compareTo(BigDecimal.ZERO)>0){
System.out.println("11111");
}
String s = "1";
if (s.equals("1")){
System.out.println("2222");
}
}
int和 Integer
在实体类中要设置Integer
Integer能判断null
而int空为0
找不到依赖
mvn idea:idea