//1-n 求和 禁止用for循环
public static int sum(int n) {
if (n == 1) {
return n;
} else {
return n + sum(n - 1);
}
}
//对身份证 年月日进行脱敏
/**
* 将字符串开始位置到结束位置之间的字符用指定字符替换
* @param sourceStr 待处理字符串
* @param begin 开始位置
* @param end 结束位置
* @param replacement 替换字符
* @return
*/
private static String replaceBetween(String sourceStr, int begin, int end, String replacement) {
if (sourceStr == null) {
return "";
}
if (replacement == null) {
replacement = "*";
}
int replaceLength = end - begin;
if (StringUtils.isNotBlank(sourceStr) && replaceLength > 0) {
StringBuilder sb = new StringBuilder(sourceStr);
sb.replace(begin, end, StringUtils.repeat(replacement, replaceLength));
return sb.toString();
} else {
return sourceStr;
}