随机生成指定位数的账号或密码

1.封装一个实体类或方法

package com.wt.controller;import java.util.Random;/*** @Author wt* @Date 2022/9/6 19:12* @PackageName:com.wt.controller* @ClassName: xx* @Description: TODO* @Version 1.0*/
public class Factory {//生成随机用户名,数字和字母组成,public static String getRandomCharacters(int length) {String val = "";Random random = new Random();//参数length,表示生成几位随机数for (int i = 0; i < length; i++) {String charOrNum = random.nextInt(2) % 2 == 0 ? "char" : "num";//输出字母还是数字if ("char".equalsIgnoreCase(charOrNum)) {//输出是大写字母还是小写字母int temp = random.nextInt(2) % 2 == 0 ? 65 : 97;val += (char) (random.nextInt(26) + temp);} else if ("num".equalsIgnoreCase(charOrNum)) {val += String.valueOf(random.nextInt(10));}}return val;}}

2.通过类名调用该方法----此处生成的账号密码是英文大小加数字写混合的

public class Test01 {public static void main(String[] args) {//通过类名调用封装好的随机生成方法---随机生成账号、密码、盐String username = Factory.getRandomCharacters(8);String password = Factory.getRandomCharacters(8);String salt = Factory.getRandomCharacters(3);System.out.println(username);System.out.println(password);System.out.println(salt);}
}

3.将所有的字母转为大写字母或小写字母---非字母不受影响

在生成的账号密码和盐后加

大写字母转小写:  .toLowerCase(Locale.ROOT)        |       .toLowerCase()

小写字母转大写:     toUpperCase(Locale.ROOT)         |        toUpperCase() 

         

public class Test01 {public static void main(String[] args) {//在生成的账号密码和盐后加.toLowerCase(Locale.ROOT)String username = Factory.getRandomCharacters(8);String password = Factory.getRandomCharacters(8);String salt = Factory.getRandomCharacters(3);String addr = Factory.getRandomCharacters(5);//将所有的字母都变为小写字母----非字母不受影响System.out.println(username.toLowerCase(Locale.ROOT));System.out.println(password.toLowerCase());//将所有的字母都变为大写字母----非字母不受影响System.out.println(salt.toUpperCase(Locale.ROOT));System.out.println(addr.toUpperCase());}
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部