用java【需求】:随机生成四位数字和字母的组合 【分析】:数字0-9的Ascii码是48-57, 大写字母A-Z的Ascii码是65-90;小写字母a-z的Ascii码是97-122; 【思路】 (1)创建一个RandomDemo类, 定义一个生成4位随机数的方法getRandom() 重载定义一个生成n位随机数的方法getRandom(int number) (2)创建一个TestRandom类,在主方法中,实例化对象,分别调用不同的方法输出随机数。
时间: 2024-01-21 08:16:26 浏览: 140
以下是Java代码实现:
```java
import java.util.Random;
public class RandomDemo {
// 生成4位随机数的方法
public static String getRandom() {
Random random = new Random();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 4; i++) {
int num = random.nextInt(62);//生成0-61之间的随机数
if (num < 10) {
sb.append((char) (num + 48));//生成数字
} else if (num < 36) {
sb.append((char) (num + 55));//生成大写字母
} else {
sb.append((char) (num + 61));//生成小写字母
}
}
return sb.toString();
}
// 生成n位随机数的方法
public static String getRandom(int number) {
Random random = new Random();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < number; i++) {
int num = random.nextInt(62);
if (num < 10) {
sb.append((char) (num + 48));
} else if (num < 36) {
sb.append((char) (num + 55));
} else {
sb.append((char) (num + 61));
}
}
return sb.toString();
}
}
//测试类
public class TestRandom {
public static void main(String[] args) {
System.out.println(RandomDemo.getRandom());//生成4位随机数
System.out.println(RandomDemo.getRandom(6));//生成6位随机数
}
}
```
以上代码中,getRandom() 方法可以生成一个4位的随机字符串,getRandom(int number) 方法可以根据传入的数字生成相应位数的随机字符串。其中,StringBuilder 类用于拼接字符串,Random 类用于生成随机数。
阅读全文