List去重
//普通代码去重
public List<Student> studentList(){
List<Student> studentList = studenService.findStuList();
for(int i=0;i < studentList.size()-1; i++){
for(int j = studentList-1;j>i; j--){
if (studentList.get(j).getHandover_record_id()== (studentList.get(i).getHandover_record_id())) {
studentList.remove(j);
}
}
}
return studentList;
}
//java8去重
studentList = studentList.stream().collect(
Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(studentList::id))),ArrayList::new)
);
多个if else如何优化
多个switch case如何优化
这段时间一直在整改代码圈复杂度,我们的要求是每个函数方法圈复杂度不得大于5
public int calculatePay(User user){
switch(user.type){
case A:
return methodA();
case B:
return methodB();
case C:
return methodC();
}
}
public abstract class User{
public. abstract. int calculatePay();
public abstract int calculateBill();
}
public interface UserFactory{
public User getUser(UserType u);
}
public class UserFactoryImpl implements UserFactory{
public User. getUser(UserType u){
switch(u.type){
case A:
return UserA;
case B:
return UserB;
case C:
return UserC;
}
}
}
以后有增加新的类型的时候,只需要新增加一个实现类UserD,UserE就行了 业务逻辑是不需要修改的!
StringUtils常用方法
字符串为空判断
字符串大小写转换函数方法
字符串替换函数方法
字符串删除指定字符串
反转函数、分割函数
截取字符串
是否包含某个字符
判断两个字符串是否相等、比较字符串的差异、返回默认字符串
比较字符串的差异