java编写程序,输入一个长度n,随机生成一个该长度的字符串,字符串由大写字母、小写字母、阿拉伯数字组成。
时间: 2024-05-14 09:15:47 浏览: 94
您可以使用java.util.Random类的nextInt方法产生一个随机数作为字符的ASCII码,然后将其转换为字符。可以使用StringBuilder类来构建字符串,循环n次,每次将生成的字符添加到字符串中即可。以下是一个示例代码:
```
import java.util.Random;
public class RandomStringGenerator {
public static String generate(int length) {
Random random = new Random();
StringBuilder sb = new StringBuilder(length);
for (int i = 0; i < length; i++) {
int category = random.nextInt(3);
int code;
switch (category) {
case 0: // Uppercase letter
code = random.nextInt('Z' - 'A' + 1) + 'A';
break;
case 1: // Lowercase letter
code = random.nextInt('z' - 'a' + 1) + 'a';
break;
case 2: // Digit
code = random.nextInt(10) + '0';
break;
default: // Should never reach here
throw new IllegalStateException("Invalid category: " + category);
}
sb.append((char) code);
}
return sb.toString();
}
public static void main(String[] args) {
int length = 10;
String str = generate(length);
System.out.println(str);
}
}
```
阅读全文