StringUtil(字符串工具类)

来源:互联网 发布:java用什么软件编写 编辑:程序博客网 时间:2024/05/22 03:04
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();
}

}