package src;
import java.util.Random;
/**
* 生成随机串工具类
*/
public class RandomStrUtils {
/**
* 生成10个同时包含数字、大写字母、小写字母的随机字符串(长度为15)
* @param args
*/
public static void main(String[] args){
for(int i=0;i<10;i++){
String str = "";
boolean b = true;
while(b){
str = getRandomCharAndNum(15);//随机串长度为15
if(isRandomCharAndNumUsable(str)){//符合要求则跳出while循环
b = false;
}
System.out.println(!b+"随机码:"+str);
}
}
}
/**
* 获取同时包含数字、大写字母、小写字母的随机字符串
* @param length
* 随机字符串长度
* @return
*/
public static String getRandomCharAndNum(Integer length) {
String str = "";
Random random = new Random();
for (int i = 0; i < length; i++) {
boolean b = random.nextBoolean();
if (b) { // 字符串
int upper = 65; //取得大写字母
if(new Random().nextInt(3)%2==0){
upper = 97; //取得小写字母
}
str += (char) (upper + random.nextInt(26));
} else { // 数字
str += String.valueOf(random.nextInt(10));
}
}
return str;
}
/**
* 验证字符串是否是同时包含了数字与大写字母、小写字母
* @param str
* 验证的字符串
* @return
* true 是;false 否
*/
public static boolean isRandomCharAndNumUsable(String str) {
if(str.matches(".*[a-z]{1,}.*") && str.matches(".*[A-Z]{1,}.*") && str.matches(".*\\d{1,}.*")){
return true;
}
return false;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
获取同时含有数字、大写字母、小写字母的随机字符串
共1个文件
java:1个
需积分: 50 11 下载量 131 浏览量
2018-01-05
16:38:39
上传
评论
收藏 960B RAR 举报
温馨提示
获取同时包含有数字、大写字母、小写字母的随机字符串,生成字符串长度是可以指定的,并有正则验证方法,代码可以直接引用。
资源推荐
资源详情
资源评论
收起资源包目录
RandomStrUtils.rar (1个子文件)
src
RandomStrUtils.java 2KB
共 1 条
- 1
资源评论
论风煮雨
- 粉丝: 7
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功