JAVASE--工具类(验证码)
工具类的定义:如果一个类中的方法全都是静态的,那么这个类中的方法就全都可以被类名直接调用,由于调用起来非常方便,就像一个工具一下,所以把这样的类就叫做工具类。
工具类的优点:提升代码复用性和开发效率。
案列:写一个生成随机验证码的工具类。
1.首先介绍一下Random函数
(1). Random函数生成的是伪随机数,即有规律的随机数。
Random 对象在种子数相同的情况下,相同次数生成的随机数是相同的。比如两个种子数相同的 Random 对象,第一次生成的随机数字完全相同,第二次生成的随机数字也完全相同。默认情况下 new Random()使用的是当前纳秒时间作为种子数的。
random类的2种构造方法:
Random() | 构造一个随机数生成器 |
---|---|
Random(long seed) | 用seed构造一个随机数生成器 |
(2).线程安全问题:线程安全指的是在多线程的场景下,程序的执行结果和预期的结果一致,就叫线程安全的,否则则为非线程安全的(也叫线程安全问题),如此看来random类是线程安全的。
(3). 随机数的取值范围:左闭右开
点击查看代码
import java.util.Random;
public class test {
public static void main(String[] args) {
Random r = new Random();
int b = r.nextInt(10);//取值范围[0,9)
System.out.println(b);
}
}
2.介绍charAt()方法:用于返回指定索引处的字符
案例实现:
点击查看代码
package demo;
import java.util.Random;
public class identify {
public static String createCode(int n) {
String code = "";
String data = "0123456789";
Random r = new Random();
for (int i = 0; i < n; i++) {
int index = r.nextInt(data.length());//通过索引获取字符
char ch = data.charAt(index);
code += ch;
}
return code;
}
}
点击查看代码
public class LoginDemo{
public static void main(String[] args){
System.out.println(identity.createCode(6));
}
}
本文作者:Blizzard21
本文链接:https://www.cnblogs.com/oneinamillion/p/17955320
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步