工具类篇大全
前言
编程有时会需要一些随机生成的字符串来满足业务需要,字符串有3种:String、StringBuffer、StringBuilder,既然要随机生成字符串,那么在使用的时候需要避免并发问题,而这3个字符中,StringBuffer才是线程安全的。
如下给出一个按指定长度可随机生成字符串的线程安全工具类:
//随机生成指定位数的字符串
public static String getRandomString(int length){
if(length == null || length <=0){
return null;
}
String base = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
Random random = new Random();
StringBuffer sb = new StringBuffer();
for(int i=0; i<length; i++){
//62个字符
int number = random.nextInt(base.length());
sb.append(base.charAt(number));
}
return sb.toString();
}
int length 代表需要生成的字符串的位数长度。
这里 base = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
注:仅列出36个字母以及0~9数字组合,对于其他特殊字符未在列,特殊字符(如:¥&@)用上述方法生成可能会报错。
另外,用该方法产生的字符串不保证唯一性。