package cn; import java.util.Random; /** * @author yeqv * @program A2 * @Classname a2 * @Date 2022/1/14 21:40 * @Email w16638771062@163.com */ public class a2 {//随机生成指定长度的一串密码 public static void main(String[] args) { a2 abc = new a2(); String a = abc.getPassword(); System.out.println(a); } public String getPassword(int... n) {//定义一个生成密码的方法返回值类型是String,输入参数的类型是int数组 //判断输入的密码长度是否为空,如果为空默认密码长度为6.不为空便是输入的长度 int num = n.length == 0 ? 6 : n[0]; //定义一个字符串作为密码的随机对象 String str = "0123456789_-=+'\",`~!@#$%^&* ()abcdefghijklmnolpqrstuvwxyzABCDEFGHIJKLMNOLPQRSTUVWXYZ"; //实例化一个字符串构造器对象,初始容量为6 StringBuilder sbu = new StringBuilder(6); //实例化一个随机生成器对象 Random rand = new Random(); for (int i = 0; i < num; i++) { //向字符串构造器中传值,str.length()为字符串str的长度,rand.nextInt()为随机生成一个数括号内是数字的范围 //str.charaAt()返回值为字符串str中的某个字符,括号内为该字符的下标。 sbu.append(str.charAt(rand.nextInt(str.length()))); } //将字符串构造器中的内容以字符串类型返回 return sbu.toString(); }
}