每天解决一个小问题,哪怕是一个练习题或者面试题,每天进步一点点,哪怕是百分之0.01也好。

今天的的练习题是生成随机字符串,要求是创建一个长度是5的随机字符串,随机字符有可能是数字,大写字母或者小写字母。

话不多说,写代码开干。

/**
 * 练习-随机字符串
 * 创建一个长度是5的随机字符串,随机字符有可能是数字,大写字母或者小写字母
 * 2021-08-01
 * */
public class RandomString20210801 {
    // 长度5
    private final static int leng = 5;

    // 1、列出所有数字、大写字母和小写字母
    private final static String[] strs = new String[]{
            "1", "2", "3", "4", "5", "6", "7", "8", "9", "0",
            "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m",
            "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z",
            "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M",
            "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"
    };

    // 2、生成随机数
    public static int rand( int min, int max ){
        return min + (int)(Math.random() * (max-min+1));
    }

    // 3、创建一个长度是5的随机字符串
    private static String createStr(){
        // 3.1 定义一个StringBuilder对象拼接字符串
        StringBuilder sb = new StringBuilder();
        // 数组的长度
        int arrayLeng = strs.length;
        // 3.2、循环5次
        for( int i = 0; i < leng; i++ ){
            // 在数组的长度内取一个随机数
            int r = rand( 0, arrayLeng );
            // 3.3 每次从数组中随机取出一个
            String s = strs[ r ];
            // 拼接字符串
            sb.append( s );
        }
        // 3.4 返回最终的5位随机字符串
        return sb.toString();
    }

    public static void main(String[] args) {
        // 调用createStr方法创建一个长度是5的随机字符串
        String str = createStr();
        // 打印
        System.out.println( str );
    }
}

写好了,运行一下

搞定了,加油!

我的个人订阅号,感兴趣的可以关注下,谢谢!


大叔学Java
1 声望0 粉丝

我的个人订阅号(大叔学Java/dashu_java)