Java随机⽣成任意组电话号码|--需求说明
要求根据⽤户输⼊,⽣成相应组数的电话号码
|--实现思路
1、通过百度,获取对应真实世界中电话号码的头三位数
2、采⽤Math.random()⽅法,⽣成电话号码的后⼋位数
|--代码内容
1package com.work;
2
3import java.util.Scanner;
4
5/**
6 * @auther::9527
7 * @Description: 随机⽣成电话号码
8 * @program: shi_yong
9 * @create: 2019-07-30 10:22
10*/
11public class RandomPhoneNum {
12static Scanner sc = new Scanner(System.in);
13
14public static <lenPhone> void main(String[] args) {
15//询问需要多少个随机号码
16boolean boo = true;
17int num = 0;
18do {
19//如果⽤户输⼊的不是⼀个整数,就循环要求⽤户输⼊⼀个整数
20 System.out.println("你需要多少组电话号码,请输⼊⼀个整数");
21 String answer = sc.next();
22try {
23//将⽤户的输⼊转化为整数
24 num = Integer.parseInt(answer);
25//如果转换成功,boo就设置为false使其可以跳出循环
26 boo = false;
27 } catch (Exception e) {
28//如果⽤户输⼊的不是⼀个整数,就抛出异常,要求⽤户重新输⼊
29 System.out.println("你输⼊的不是⼀个整数,请重新输⼊");
30 }
31
32 } while (boo);
33
java生成随机数的方法34 System.out.println("你要的⼿机号码如下:");
35//将循环次数设置为⽤户需要的号码的数量
36for (int i = 0; i < num; i++) {
37//调⽤静态⽅法⽣成⼿机号码
38 getPhoneNum();
39 }
40 }
41
42//定⼀个静态⽅法,专门⽣成单个的号码
43public static void getPhoneNum() {
44//给予真实的初始号段,号段是在百度上⾯查的真实号段
45 String[] start = {"133", "149", "153", "173", "177",
46 "180", "181", "189", "199", "130", "131", "132",
46 "180", "181", "189", "199", "130", "131", "132",
47 "145", "155", "156", "166", "171", "175", "176", "185", "186", "166", "134", "135",
48 "136", "137", "138", "139", "147", "150", "151", "152", "157", "158", "159", "172",
49 "178", "182", "183", "184", "187", "188", "198", "170", "171"};
50
51//随机出真实号段使⽤数组的length属性,获得数组长度,
52//通过Math.random()*数组长度获得数组下标,从⽽随机出前三位的号段
53 String phoneFirstNum = start[(int) (Math.random() * start.length)];
54//随机出剩下的8位数
55 String phoneLastNum = "";
56//定义尾号,尾号是8位
57final int LENPHONE = 8;
58//循环剩下的位数
59for (int i = 0; i < LENPHONE; i++) {
60//每次循环都从0~9挑选⼀个随机数
61 phoneLastNum += (int) (Math.random() * 10);
62 }
63//最终将号段和尾数连接起来
64 String phoneNum = phoneFirstNum + phoneLastNum;
65 System.out.println(phoneNum);
66 }
67 }
随机⽣成任意要求数量的电话号码
|--运⾏结果
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论