zoukankan      html  css  js  c++  java
  • Java生成固定长度的随机字符串(以大小写字母和数字)

    package org.jimmy.autosearch2019.test;
    
    import java.util.ArrayList;
    import java.util.Random;
    
    /**
     * @author ラピスラズリ(Dawn)
     * @date 2019年5月30日 下午3:18:48
     * @detail 随机生成固定长度的字符串
     */
    public class TestRandom2019053001 {
    
        public static ArrayList<String> strList = new ArrayList<String>();
        public static Random random = new Random();
        public static final int RANDOM_LENGTH1 = 256;
        public static final int RANDOM_LENGTH2 = 512;
        public static final int RANDOM_LENGTH3 = 1024;
        
        static {
            init();
        }
        
        public static void main(String[] args) {
            String randomStr = generateRandomStr(RANDOM_LENGTH1);
            System.out.println(RANDOM_LENGTH1 + "位随机数:" + randomStr);
            randomStr = generateRandomStr(RANDOM_LENGTH2);
            System.out.println(RANDOM_LENGTH2 + "位随机数:" + randomStr);
            randomStr = generateRandomStr(RANDOM_LENGTH3);
            System.out.println(RANDOM_LENGTH3 + "位随机数:" + randomStr);
        }
        
        public static String generateRandomStr(int length) {
            StringBuffer sb = new StringBuffer();
            for(int i = 0; i < length; i++) {
                int size = strList.size();
                String randomStr = strList.get(random.nextInt(size));
                sb.append(randomStr);
            }
            return sb.toString();
        }
        
        public static void init() {
            int begin = 97;
            //生成小写字母,并加入集合
            for(int i = begin; i < begin + 26; i++) {
                strList.add((char)i + "");
            }
            //生成大写字母,并加入集合
            begin = 65;
            for(int i = begin; i < begin + 26; i++) {
                strList.add((char)i + "");
            }
            //将0-9的数字加入集合
            for(int i = 0; i < 10; i++) {
                strList.add(i + "");
            }
        }
        
    }

    运行后效果:

    256位随机数:qZP66hBKD2qZUNNw0seH2auRjw7wvtVAUAlV6Ze5jZXzL8H6MXSKSKcA3a5ae116DhMLD0jXlbNQp1YlRpDIpijbn9EtqPlWsIbvlrE1fZtnY8K88N6uhOYsCZc44A064arq0bK4tkCvVcXLPTyGeHJkBfujOrQfpkydRGTY1cGVSUgdVhrtyDUjBpNf393WRygZKSDUy704B2hzXWw7lTRImD5Y1evtXmglo4xmJn7XogvlsnenKlNtnZhfIz42
    512位随机数:z70aSppoq72xBjElVsedc3jVrscJKczb42kwgn1DNK3GoLKhmsIG0qme7APZB5kEXBer82Wz8DvGXQhLo2sZq1aCEKcviC0NUYBKxe0r6dTCrvrdMiIJfUv9O0idBEveM8ivLwbFmO1CO8nhNQftdBVFc1eaMwnHnM0VoXzHuqIpkmiII3tcwFi6pSWNzAhCXXtCuXjvEfh2KQS7hYqn2UdMGt347zRSKJqnJA7jjwsbg4tqrLxMl6YdqJMvWDRVWgcoL99aHCAbi4ruNJdRPef386FVF2toKXFOPekKrSQAU4oNwJj7hNdmum95ZP1XejYQ7VKSOwKXWbFKJrlGZVI2nex0zYQLLBKlDxbiiaTV24wjGDA6TWBysxjkWcnWu31CVF6cKOWZcBGvkw1seJ2UBiYi8RMOqns01yN8vMDCcmxsnlcgPrp1ETrGIbveuuuyoBmnGUblPeNaVwAbabJXiMEjylsuerVlgIIXebVPFZEJYsikoEMXbSWTCu1v
    1024位随机数:xQWiJx91GDPeIJwnWH3chn0dayyRF8NlKhWf9gdMkVImLmgY4PzpVcNjMnT0htcc6vPxCD8YVYf8seTikKc7jXHxJj03rsMMA9W6GBlRtynSfdPR1sTZT67TM2JDilkYKBuZSSOvOsXWMrMnsFEcMnAJHj4N0nAYfqFgKin0q4vdfsYOJv5zZ2OBnviqpQ7Hezgew6LEMo5JAGVcL8qZCnr50salKQnLyyUvwXG9WmGh1FSWYGY8xbdbQg1Ft8gyM5Q4U5NVIIviLrDKgQy2nC2XGqTbQjIYQZr9jIwam6HBgFVn7QLi4Op1I5psDXDmRfZZ52HdqR1l2ZeLFf7ZoOQTsj40QmcSevqXKwkF7O5RGdsZzQFohzB3gNQOl5ed6Sj0IfZQnYjK3suzlBi1dTfKeimcA45Q2ILFZbfBR5C1Hj2SACCVaMUq7St7aNDnahvrW204UfW7HWkH960aDwZ8PBsvvJwwvT0BnhJulehdnhMIlwnmq6yHtUt3rVOltbGyuPkJjRruLYTtxswsrLFdgOpARXMWYWfvdwvm49ztGwTWlVRS4jS1ZDxfmX2jwN2EiIh3xBwvOgK3aqmGP6RA5qhrCYR2VJtIWhYINcF66iHiJ5NPpr90DUDNioVFWgIb50MTNiABjAqrxXxWWJ7xNtSCgXamDz3ylkpSCFmM6JDDxeqW2b5f0fUzop1WBiTtsfs7R7KyW469Po68x0qqTz3NV0LcT6pTiXRoQlMDvjCZeOEcnr5CMe35dLrUX6mfTl4b0mrocCGCdPDG58RvTgOIY7AF28ccrj8SOfGKhhKVzilzjemulGAk0RLTIzWOtZTaSijcozYojVpP1bsUEpgcvgXh3brnjLN72HJDrxc4zOUuVPzrXpL0MilxGCtelhNM5q7EBH63IStJhmqGZU3xsdqIkO5wIXVbJHnsyLaP2q76SVyVIZv97mtyRVWVQP7ShQ4o6ozY9A6aZtsnzTV9A5XHdrMhjGy2ksBRLKsARdd0EAiyj2CLDYrN

    2015年10月-2016年3月 总计:5个月.
    2016年11月-2017年6月 总计:7个月.
    2017年7月-2018年4月 总计:9个月.
    2018年5月-2018年5月 总计:1个月.
    2018年6月-2018年12月 总计:6个月.
    2019年1月-2019年12月 总计11个月.
    2020年2月-2021年2月 总计13个月.
    所有总计:5+7+9+1+6+11+13=52个月(4年4个月).
    本人认同二元论.我是理想主义者,现实主义者,乐观主义者,有一定的完美主义倾向.不过,一直都是咸鱼(菜鸟),就算有机会,我也不想咸鱼翻身.(并不矛盾,因为具体情况具体分析)
    英语,高等数学,考研,其他知识学习打卡交流QQ群:946556683
  • 相关阅读:
    网络安全分析
    java实现 洛谷 P1464 Function
    java实现 洛谷 P1464 Function
    java实现 洛谷 P1014 Cantor表
    java实现 洛谷 P1014 Cantor表
    java实现 洛谷 P1014 Cantor表
    java实现 洛谷 P1014 Cantor表
    java实现 洛谷 P1014 Cantor表
    java实现 洛谷 P1540 机器
    java实现 洛谷 P1540 机器
  • 原文地址:https://www.cnblogs.com/JimmySeraph/p/10949798.html
Copyright © 2011-2022 走看看