首页 > 编程语言 >【Java】生成随机字符串

【Java】生成随机字符串

时间:2022-11-15 09:56:49浏览次数:40  
标签:Java String int random char nextInt 随机 randomSb 字符串

package com.runsky.utils;

import java.util.Random;

public class GetRandom {

    private static final String[] GENERATE_SOURCE = new String[]{"0", "1", "2", "3", "4", "5", "6", "7",
            "8", "9", "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"};

    public static String generateByRandom(final int length) {
        StringBuilder randomSb = new StringBuilder(length);
        Random random = new Random();
        for (int i = 0; i < length; i++) {
            // 输出字母还是数字
            String charOrNum = random.nextInt(2) % 2 == 0 ? "char" : "num";
            // 字符串
            if ("char".equals(charOrNum)) {
                // 判断字母大小写
                int choice = random.nextInt(2) % 2 == 0 ? 65 : 97;
                randomSb = randomSb.append((char) (choice + random.nextInt(26)));
            } else {
                randomSb = randomSb.append(random.nextInt(10));
            }
        }
        return randomSb.toString();
    }

    public static void main(String[] args) {
        String s = generateByRandom(12);
        System.out.println(s);
    }
}

标签:Java,String,int,random,char,nextInt,随机,randomSb,字符串
From: https://www.cnblogs.com/wangjinkui/p/16891420.html

相关文章

  • JavaScript自定义数据类型判断函数
    functionjudgeType(ele){letres=typeofele;if(res==="object"){//短路表达式,第一个成立则返回第二个的值,第一个不成立,则返回第一个的值......
  • Oracle中的substr()函数,截取字符串
    实例、selectsubstr('HelloWorld',0,3)valuefromdual;//返回结果:Hel,截取从“H”开始3个字符、selectsubstr('HelloWorld',1,3)valuefromdual;//返回结果:Hel,截取......
  • Java注解与原理分析
    目录一、注解基础二、注解原理三、常用注解1、JDK注解2、Lombok注解四、自定义注解1、同步控制2、类型引擎五、参考源码使用的太多,被忽略的理所当然;一、注解基础注解......
  • java向kafka发送消息(生产者)
    代码如下,简单记录一下packageorg.example;importjava.util.Properties;importorg.apache.kafka.clients.producer.KafkaProducer;importorg.apache.kafka.client......
  • Java反应式编程(2)
    您好,我是湘王,这是我的博客园,欢迎您来,欢迎您再来~ 看了前面对反应式编程的说明,可能很多人都会打退堂鼓了。Lambda都已经够难理解的了,又来了一个反应式编程!实在卷不动了~其......
  • Java 同步锁ReentrantLock与抽象同步队列AQS
    AbstractQueuedSynchronizer抽象同步队列,它是个模板类提供了许多以锁相关的操作,常说的AQS指的就是它。AQS继承了AbstractOwnableSynchronizer类,AOS用于保存线程对象,保存什......
  • JAVA学习
    JAVA问题解决综合问题语句FILEf=newFILE("Grades.txt");在IDEA中运行时,读取的目标文件不一定是源码所在目录下的"Grades.txt",而是源码类所属的父模块中最高级的模......
  • javaScript书写位置
    1.内部javaScript   直接写在html文件里,用script标签包住  规范:script标签写在</body>上面2.外部js:代码写在以.js结尾的文件里语法:通过scr......
  • Javascript的字符串不可变性
    JS的字符串不可变指的是字符串值是不变的,只是变量指向的地址变化了,重新在内存中开辟了空间.vara='111';vara='222';此时字符串'111'的空间依然存在内存中,重新开辟......
  • 使用JAVA实现循环相克令
    一、问题描述:循环相克令是说有两个人在玩游戏,分别出猎人、枪、狗熊中的一个,其中猎人胜枪,枪胜狗熊,狗熊胜猎人。他们两个人进行若干次比赛,然后我们判断一下每次的胜负。二、......