用java编写一个方法int getNumber(),随机生成11位电话号码,如:13011112222。要求号码首位必须为1,第2位可以为3、5、7、8,第3位可以为0、1、2、3、5、7,第4至11位随机生成。
时间: 2024-10-11 11:14:20 浏览: 20
StudentTest.java
你可以使用Java的`Random`类以及一些基本的条件判断来实现这个需求。下面是一个简单的示例:
```java
import java.util.Random;
public class PhoneNumberGenerator {
public static int generatePhoneNumber() {
Random random = new Random();
// 首位固定为1
int number = 1;
// 第二位随机选择特定数字
String allowedSecondDigit = "3578";
char secondDigit = allowedSecondDigit.charAt(random.nextInt(allowedSecondDigit.length()));
number *= 10 + (secondDigit - '0'); // 将字符转换为整数并加入到号码中
// 第三位随机范围较大,直接生成0-9的随机数
int thirdDigit = random.nextInt(10);
number *= 10 + thirdDigit;
// 第四至十一位随机生成,范围为0-9
for (int i = 4; i <= 11; i++) {
number *= 10;
number += random.nextInt(10);
}
return number;
}
public static void main(String[] args) {
int phoneNumber = generatePhoneNumber();
System.out.println("Generated phone number: " + phoneNumber);
}
}
```
在这个例子中,我们首先创建了一个`Random`对象用于生成随机数。然后按照题目描述的规则生成每个位置的数字,并将它们组合在一起形成最终的11位电话号码。
阅读全文