zoukankan      html  css  js  c++  java
  • Java实现获取指定长度随机字符串

    思路:使用assic码表,三个范围:数字(48-57),大写字母(65-90),小写字母(97-122)

     代码:

    import java.util.Random;
     
    /**
     * 随机字符串工具
     * 
     * @author volitation
     *
     */
    public class RandomString {
     
        /**
         * 获取指定长度随机字符串
         * 
         * @param length
         * @return
         */
        public static String getRandomString(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();
        }
        
        /**
         * 测试验证
         * 
         * @param args
         */
        public static void main(String[] args) {
            System.out.println(RandomString.getRandomString(5));
            System.out.println(RandomString.getRandomString(10));
            System.out.println(RandomString.getRandomString(15));
        }
     
    }

    测试:

    NVadc
    8C1UH1Y0hS
    dfiXZMR22pv422I

    ASCII码表:

  • 相关阅读:
    php switch case的"bug"
    win7 安装redis服务
    linux 查看网卡以及开启网卡
    getSelection、range 对象属性,方法理解,解释
    关于window.getSelection
    富文本原理
    elasticsearch启动常见错误
    Linux 修改用户密码
    centos修改主机名的正确方法
    Dockerfile介绍
  • 原文地址:https://www.cnblogs.com/xiejn/p/14592050.html
Copyright © 2011-2022 走看看