随机生成n数字和字母的组合。 【需求】:随机生成四位数字和字母的组合 【分析】:数字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-02-06 15:12:35 浏览: 105
好的,我会帮你解决这个问题。
以下是代码实现:
```java
import java.util.Random;
public class RandomDemo {
// 生成4位随机数
public String getRandom() {
String result = "";
Random random = new Random();
for (int i = 0; i < 4; i++) {
int n = random.nextInt(36);
if (n < 10) {
result += n;
} else {
char c = (char) ('a' + n - 10);
result += c;
}
}
return result;
}
// 生成n位随机数
public String getRandom(int number) {
String result = "";
Random random = new Random();
for (int i = 0; i < number; i++) {
int n = random.nextInt(36);
if (n < 10) {
result += n;
} else {
char c = (char) ('a' + n - 10);
result += c;
}
}
return result;
}
}
```
测试代码:
```java
public class TestRandom {
public static void main(String[] args) {
RandomDemo randomDemo = new RandomDemo();
// 生成4位随机数
String random1 = randomDemo.getRandom();
System.out.println("随机生成的4位数字和字母的组合是:" + random1);
// 生成10位随机数
String random2 = randomDemo.getRandom(10);
System.out.println("随机生成的10位数字和字母的组合是:" + random2);
}
}
```
输出结果:
```
随机生成的4位数字和字母的组合是:3c2q
随机生成的10位数字和字母的组合是:1azqo5i7xk
```
希望这个答案能够帮助到你!
阅读全文