import org.apache.commons.lang.StringUtils;
public class StringUtil {
/**
* 字符串隐藏部分内容方法
*
* @param str
* 待处理字符串
* @param start
* 前面保留长度
* @param end
* 末尾保留长度
* @return 处理过的字符串
*/
public static String formatStringByRange(String str, int start, int end) {
if (StringUtils.isEmpty(str) || str.length() <= start + end) {
return str;
}
int startNum = str.length() - start - end;
StringBuffer sb = new StringBuffer();
for (int i = 0; i < str.length(); i++) {
if (i >= start && i < start + startNum) {
sb.append("*");
continue;
}
sb.append(str.charAt(i));
}
return sb.toString();
}
/**
* 判断对象是否为空
*/
public static Boolean isBlank(Object obj) {
if (null == obj || StringUtils.isBlank(obj.toString())) {
return true;
}
return false;
}
/**
* 判断对象是否不为空
*/
public static Boolean isNotBlank(Object obj) {
if (isBlank(obj)) {
return false;
}
return true;
}
/**
* 获取随机名称
*
* @param shopPrefix
* 名称前缀
* @param length
* 后缀随机数长度
*/
public static String randomName(String shopPrefix, int length) {
StringBuilder builder = new StringBuilder(length);
for (int i = 0; i < length; i++) {
int r = (int) (Math.random() * 2);
int rn1 = (int) (48 + Math.random() * 10);
int rn2 = (int) (97 + Math.random() * 26);
switch (r) {
case 0:
builder.append((char) rn1);
break;
case 1:
builder.append((char) rn2);
break;
}
}
return shopPrefix + builder.toString();
}
}