java 随机生成的手机号码
最编程
2024-04-08 14:45:39
...
package com.cw.bigdata.generatedata;
import java.util.Random;
/**
* @author 陈小哥cw
* @date 2020/12/22 9:10
*/
public class RandomPhoneNumber {
//中国移动
public static final String[] CHINA_MOBILE = {
"134", "135", "136", "137", "138", "139", "150", "151", "152", "157", "158", "159",
"182", "183", "184", "187", "188", "178", "147", "172", "198"
};
//中国联通
public static final String[] CHINA_UNICOM = {
"130", "131", "132", "145", "155", "156", "166", "171", "175", "176", "185", "186", "166"
};
//中国电信
public static final String[] CHINA_TELECOME = {
"133", "149", "153", "173", "177", "180", "181", "189", "199"
};
/**
* 生成手机号
*
* @param op 0 移动 1 联通 2 电信
*/
public static String createMobile(int op) {
StringBuilder sb = new StringBuilder();
Random random = new Random();
String mobile01;//手机号前三位
int temp;
switch (op) {
case 0:
mobile01 = CHINA_MOBILE[random.nextInt(CHINA_MOBILE.length)];
break;
case 1:
mobile01 = CHINA_UNICOM[random.nextInt(CHINA_UNICOM.length)];
break;
case 2:
mobile01 = CHINA_TELECOME[random.nextInt(CHINA_TELECOME.length)];
break;
default:
mobile01 = "op标志位有误!";
break;
}
if (mobile01.length() > 3) {
return mobile01;
}
sb.append(mobile01);
//生成手机号后8位
for (int i = 0; i < 8; i++) {
temp = random.nextInt(10);
sb.append(temp);
}
return sb.toString();
}
public static void main(String[] args) {
Random random = new Random();
StringBuilder sb = new StringBuilder();
for (int i = 1; i <= 10; i++) {
int op = random.nextInt(3);//随机运营商标志位
sb.append(createMobile(op));
if (i % 10 == 0) {
sb.append("\n");
} else {
sb.append("\t");
}
}
System.out.println(sb.toString());
}
}
上一篇: 从未想过身边的技术可以这样使用
下一篇: 暂停手机号码服务意味着什么?