Java 生成随机数最佳实践(完整版)
时间:2026-11-2 08:41 作者:emer 分类: 无
生成随机数为什么值得花时间学?
本文面向正在学习或使用Java的开发者,主题是生成随机数。内容以实战为导向,少讲道理,多给示例。
用好生成随机数,记住这几点
- 定期回顾自己写的生成随机数相关代码,随着经验增长总能发现改进空间。
- 生成随机数的使用要适度,过度设计比不用更糟糕。
- 上线前对生成随机数相关的功能做一轮完整测试,别只测正常流程。
理论部分就聊到这,下面进入实战环节。
写一段生成随机数的代码
举个例子,生成随机数:
// 普通场景
ThreadLocalRandom r = ThreadLocalRandom.current();
int n = r.nextInt(1, 101); // [1, 101) 即 1~100
double d = r.nextDouble();
// 6 位数字验证码
String code = String.valueOf(r.nextInt(900000) + 100000);
// 安全场景(令牌、密钥)用 SecureRandom
SecureRandom sr = new SecureRandom();
byte[] token = new byte[16];
sr.nextBytes(token);
System.out.println(Hex.encodeHexString(token));
常见问题与注意事项
- 官方文档永远是最权威的资料,博客只能作为补充。
- 大文件操作要流式处理,一次性读入内存迟早出问题。
- 不要在线上环境直接调试,复制一份数据到本地慢慢查。
- 数据库操作后记得确认影响行数,0 行和预期不符时要警惕。
最后说两句
学习生成随机数没有捷径,但有方法:理解原理、动手实践、总结复盘。这三步走扎实了,面试和工作都不慌。
遇见问题加 QQ23979811 协助处理