java随机生成字符串

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java随机生成字符串相关的知识,希望对你有一定的参考价值。

利用线性表的顺序存储结构和链式存储结构对随机生
成的32位长度的字符串做10000次增删改查循环,并比较它们的执行效率。

代码如下:
import java.util.Random;

public class Demo
public static void main(String args[])
Demo demo = new Demo();
System.out.println(demo.getRandomString(20));


public static String getRandomString(int length)
StringBuffer buffer = new StringBuffer("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ");
StringBuffer sb = new StringBuffer();
Random random = new Random();
int range = buffer.length();
for (int i = 0; i < length; i ++)
sb.append(buffer.charAt(random.nextInt(range)));

return sb.toString();


代码解读:

调用getRandomString()方法时的length参数为要返回的随机字符串的长度。

StringBuffer buffer = new StringBuffer("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ");

0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

此段字符串代表要出现的字符还可以是其他字符

如:- + = * 。.等等
参考技术A 一个生成随机字符串的方法:
public static String random(int length)
StringBuilder builder = new StringBuilder(length);
for(int i = 0; i < length; i++)
builder.append((char)(ThreadLocalRandom.current().nextInt(33,128)));

return builder.toString();
参考技术B 32位长度的随机字符串

第一个应该想到的是UUID
参考技术C public static String random(int length)
StringBuilder builder = new StringBuilder(length);
for(int i = 0; i < length; i++)
builder.append((char)(ThreadLocalRandom.current().nextInt(33,128)));

return builder.toString();
参考技术D java应该是比较好做的。

Java随机生成字符串

Java随机生成字符串看图,我不会写

代码如下,供参考:

import java.util.Random;

public class Main 
    public static void main(String[] args) 
        char[] chs = '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';
        String str = new Main().getStr(chs);
        System.out.println(str);
    

    public String getStr(char[] chs) 
        String str = "";
        Random random = new Random();
        for (int i = 0; i < 4; i++) 
                // 这种写法易于扩展,chs内容改了不用修改代码
            str += chs[random.nextInt(chs.length)];
        
        str += random.nextInt(10);

        return str;
    

参考技术A
public class  Test 
public static void main(String[] args)  
char[] chs = new char[]'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';
for(int i = 0; i < 40; i++)
String str = getStr(chs);
System.out.println(str);



public static String getStr(char[] chs) 
String str = "";
for(int i = 0; i < 4; i++)
int r = (int) (Math.random() * 26);
str += chs[r];

int n = (int) (Math.random() * 10);
str += n;
return str;

以上是关于java随机生成字符串的主要内容,如果未能解决你的问题,请参考以下文章

在java语言中如何随机地生成一个字符串

java随机生成字符串(字符随机生成类 生成随机字符组合)

java随机生成字符串

js-生成随机字符串

java生成随机字符串方法(三种)

如何用java随机生成一个字母