Java 隨機生成任意組電話號碼過程解析
更新時間:2019年10月09日 15:12:33 作者:小龍_T無限
這篇文章主要介紹了Java 隨機生成任意組電話號碼過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
需求說明
要求根據用戶輸入,生成相應組數(shù)的電話號碼
實現(xiàn)思路
1、通過百度,獲取對應真實世界中電話號碼的頭三位數(shù)
2、采用Math.random()方法,生成電話號碼的后八位數(shù)
代碼內容
隨機生成任意要求數(shù)量的電話號碼
package com.work;
import java.util.Scanner;
/**
* @auther::9527
* @Description: 隨機生成電話號碼
* @program: shi_yong
* @create: 2019-07-30 10:22
*/
public class RandomPhoneNum {
static Scanner sc = new Scanner(System.in);
public static <lenPhone> void main(String[] args) {
//詢問需要多少個隨機號碼
boolean boo = true;
int num = 0;
do {
//如果用戶輸入的不是一個整數(shù),就循環(huán)要求用戶輸入一個整數(shù)
System.out.println("你需要多少組電話號碼,請輸入一個整數(shù)");
String answer = sc.next();
try {
//將用戶的輸入轉化為整數(shù)
num = Integer.parseInt(answer);
//如果轉換成功,boo就設置為false使其可以跳出循環(huán)
boo = false;
} catch (Exception e) {
//如果用戶輸入的不是一個整數(shù),就拋出異常,要求用戶重新輸入
System.out.println("你輸入的不是一個整數(shù),請重新輸入");
}
} while (boo);
System.out.println("你要的手機號碼如下:");
//將循環(huán)次數(shù)設置為用戶需要的號碼的數(shù)量
for (int i = 0; i < num; i++) {
//調用靜態(tài)方法生成手機號碼
getPhoneNum();
}
}
//定一個靜態(tài)方法,專門生成單個的號碼
public static void getPhoneNum() {
//給予真實的初始號段,號段是在百度上面查找的真實號段
String[] start = {"133", "149", "153", "173", "177",
"180", "181", "189", "199", "130", "131", "132",
"145", "155", "156", "166", "171", "175", "176", "185", "186", "166", "134", "135",
"136", "137", "138", "139", "147", "150", "151", "152", "157", "158", "159", "172",
"178", "182", "183", "184", "187", "188", "198", "170", "171"};
//隨機出真實號段 使用數(shù)組的length屬性,獲得數(shù)組長度,
//通過Math.random()*數(shù)組長度獲得數(shù)組下標,從而隨機出前三位的號段
String phoneFirstNum = start[(int) (Math.random() * start.length)];
//隨機出剩下的8位數(shù)
String phoneLastNum = "";
//定義尾號,尾號是8位
final int LENPHONE = 8;
//循環(huán)剩下的位數(shù)
for (int i = 0; i < LENPHONE; i++) {
//每次循環(huán)都從0~9挑選一個隨機數(shù)
phoneLastNum += (int) (Math.random() * 10);
}
//最終將號段和尾數(shù)連接起來
String phoneNum = phoneFirstNum + phoneLastNum;
System.out.println(phoneNum);
}
}
運行結果

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
分頁技術原理與實現(xiàn)之Java+Oracle代碼實現(xiàn)分頁(二)
這篇文章主要介紹了分頁技術原理與實現(xiàn)的第二篇:Java+Oracle代碼實現(xiàn)分頁,感興趣的小伙伴們可以參考一下2016-06-06
Springboot整合mybatis開啟二級緩存的實現(xiàn)示例
在一級緩存中,是查詢兩次數(shù)據庫的,顯然這是一種浪費,既然SQL查詢相同,就沒有必要再次查庫了,直接利用緩存數(shù)據即可,這種思想就是MyBatis二級緩存的初衷,本文就詳細的介紹了Springboot整合mybatis開啟二級緩存,感興趣的可以了解一下2022-05-05
基于params、@PathVariabl和@RequestParam的用法與區(qū)別說明
這篇文章主要介紹了方法參數(shù)相關屬性params、@PathVariabl和@RequestParam用法與區(qū)別,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08
Java class文件格式之訪問標志信息_動力節(jié)點Java學院整理
access_flags 描述的是當前類(或者接口)的訪問修飾符, 如public, private等, 此外, 這里面還存在一個標志位, 標志當前的額這個class描述的是類, 還是接口2017-06-06
關于Spring?Data?Jpa?自定義方法實現(xiàn)問題
這篇文章主要介紹了關于Spring?Data?Jpa?自定義方法實現(xiàn)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12

