使用Java编写一个方法int getNumber(),随机生成11位电话号码,如:13011112222。要求号码首位必须为1,第2位可以为3、5、7、8,第3位可以为0、1、2、3、5、7,第4至11位随机生成。
时间: 2024-10-11 13:14:21 浏览: 18
在Java中,你可以使用`Random`类以及一些字符串操作来实现这个功能。下面是一个示例代码片段:
```java
import java.util.Random;
public class PhoneNumberGenerator {
private static final String[] areaCodes = {"1", "3", "5", "7", "8"};
private static final String digitChars = "0123456789";
public int generatePhoneNumber() {
Random random = new Random();
// 首位固定为1
String prefix = "1";
// 第二位随机从指定数组中选取
String secondDigit = areaCodes[random.nextInt(areaCodes.length)];
// 第三位和后面的九位数字随机生成
StringBuilder phoneNumber = new StringBuilder(prefix + secondDigit);
for (int i = 2; i < 11; i++) {
phoneNumber.append(digitChars.charAt(random.nextInt(digitChars.length())));
}
return Integer.parseInt(phoneNumber.toString());
}
public static void main(String[] args) {
PhoneNumberGenerator generator = new PhoneNumberGenerator();
int phoneNumber = generator.generatePhoneNumber();
System.out.println("Generated phone number: " + phoneNumber);
}
}
```
这段代码首先创建了一个固定的首位数字"1",然后从`areaCodes`数组中随机选择一个第二位数字,接着生成剩余九位的随机数。最后将所有部分组合成一个整数返回。
阅读全文