zoukankan      html  css  js  c++  java
  • Java随机生成字符串举例

    Java代码:

    package tools.randomstring;
    
    import org.apache.commons.lang.RandomStringUtils;
    
    import java.util.Random;
    
    public class RandomString {
    
        /**
         * 1、生成的字符串每个位置都有可能是str中的一个字母或数字,需要导入的包是import java.util.Random;
         *
         * @param length:用户要求产生字符串的长度
         */
        public static String getRandomString(int length) {
    //        String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
            String str = "赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨朱秦尤许何吕施张孔曹严华金魏陶姜";
            Random random = new Random();
            StringBuffer sb = new StringBuffer();
            for (int i = 0; i < length; i++) {
                int number = random.nextInt(str.length());
                sb.append(str.charAt(number));
            }
            return sb.toString();
        }
    
        /**
         * 2、可以指定某个位置是a-z、A-Z或是0-9
         */
        public static String getRandomString2(int length) {
            Random random = new Random();
            StringBuffer sb = new StringBuffer();
            for (int i = 0; i < length; i++) {
                int number = random.nextInt(3);
                long result = 0;
                switch (number) {
                    case 0:
                        result = Math.round(Math.random() * 25 + 65);
                        sb.append(String.valueOf((char) result));
                        break;
                    case 1:
                        result = Math.round(Math.random() * 25 + 97);
                        sb.append(String.valueOf((char) result));
                        break;
                    case 2:
                        sb.append(String.valueOf(new Random().nextInt(10)));
                        break;
                }
            }
            return sb.toString();
        }
    
        /**
         * 3、org.apache.commons.lang包下有一个RandomStringUtils类,其中有一个randomAlphanumeric(int length)函数,
         * 可以随机生成一个长度为length的字符串。
         */
        public static String getRandomString3(int length) {
            String str = RandomStringUtils.randomAlphanumeric(length);
            return str;
        }
    
        public static void main(String[] args) {
            String str = getRandomString(2);
            System.out.println("方法一:" + str);
            str = getRandomString2(3);
            System.out.println("方法二:" + str);
            str = getRandomString3(4);
            System.out.println("方法三:" + str);
        }
    
    }

    运行结果:

    方法一:陶尤
    方法二:hQz
    方法三:b35n
  • 相关阅读:
    JAVA并发-CountDownLatch
    【转载】Makedown数学公式语法
    算法的时间复杂度
    JVM-卡表(Card Table)
    sync.WaitGroup的使用以及坑
    go 多协程爬取图片
    go ioutial 读取写入文件
    go 下载图片
    go 正则 爬取邮箱代码
    go 解析path
  • 原文地址:https://www.cnblogs.com/gongxr/p/13914547.html
Copyright © 2011-2022 走看看