java生成随机数、随机英文字母、随机字符串 20257041编辑
Heaven helps those who help themselves
资深码农+深耕理财=财富自由
欢迎关注
资深码农+深耕理财=财富自由
欢迎关注

java生成随机数、随机英文字母、随机字符串
Created by Marydon on 2022-05-31 11:16
1.生成随机数字
以生成4位随机数字举例说明
方式一:
(int) (Math.random() * (9999 - 1000 + 1)) + 1000
说明:
随机数范围:1000~9999。
方式二:
new Random().nextInt(9999 - 1000 + 1) + 1000
说明:
随机数范围:1000~9999。
方式三:
String.format("%04d",new Random().nextInt(9999 + 1))
说明:
随机数范围:0000~9999。
方式四:推荐使用
所需jar包
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.12.0</version> </dependency>
生成任意长度的随机数字
RandomStringUtils.randomNumeric(length)
2.生成随机英文字母
也是使用common-lang3.jar
生成任意长度的随机英文字母
RandomStringUtils.randomAlphabetic(length)
说明:
随机字母范围:[a,Z],即26个小写英文字母+26个大写英文字母(区分大小写)。
3.生成随机字符串
方式一:
/* * 生成随机字符串 * @description: * @date: 2022/4/20 11:18 * @param: len 随机字符串的长度 * @return: java.lang.String 指定长度的随机字符串 */ public static String genRandomStr(int len) { // 35是因为数组是从0开始的,26个字母+10个数字 final int maxNum = 36; int i; // 生成的随机数 int count = 0; // 生成的随机数的长度 char[] str = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' }; StringBuilder pwd = new StringBuilder(); Random r = new Random(); while (count < len) { // 生成随机数,0~35 i = r.nextInt(maxNum); if (i >= 0 && i < str.length) { pwd.append(str[i]); count++; } } return pwd.toString(); }
方式二:推荐使用
生成任意长度的随机字母+随机数字
RandomStringUtils.randomAlphanumeric(length);
说明:
随机字母范围:[a,Z],即26个小写英文字母+26个大写英文字母(区分大小写)。
写在最后
哪位大佬如若发现文章存在纰漏之处或需要补充更多内容,欢迎留言!!!
相关推荐:
与君共勉:最实用的自律是攒钱,最养眼的自律是健身,最健康的自律是早睡,最改变气质的自律是看书,最好的自律是经济独立 。
您的一个点赞,一句留言,一次打赏,就是博主创作的动力源泉!
↓↓↓↓↓↓写的不错,对你有帮助?赏博主一口饭吧↓↓↓↓↓↓
本文来自博客园,作者:Marydon,转载请注明原文链接:https://www.cnblogs.com/Marydon20170307/p/16329653.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
2018-05-31 JavaWeb 获取ip地址
2018-05-31 java 日期Date类型比较大小
2018-05-31 java 生成GUID与UUID
2018-05-31 java 实现md5加密的三种方式与解密
2018-05-31 excel 快速比对两列数据差异
2018-05-31 excel 永久保存宏命令
2018-05-31 excel 获取中文拼音首字母