1. 程式人生 > 實用技巧 >【日常摘要】- 生成隨機的姓名或手機號篇

【日常摘要】- 生成隨機的姓名或手機號篇

  • 有時候在一些業務場景會出現需要生成一些虛擬的資料用於展示,當然,不能說是假的,此時就會需要一些工具類
  • 如下程式碼:
public class CreateRandomInfoUtils {

    /**
     * 隨機生成手機號
     *
     * @return
     */
    public static String generateRandomPhone() {
        Random random = new Random();
        String[] telFirst = "134,135,136,137,138,139,150,151,152,157,158,159,130,131,132,155,156,133,153".split(",");
        String first = telFirst[random.nextInt(telFirst.length - 1)];
        String second = String.valueOf(random.nextInt(888) + 10000).substring(1);
        String third = String.valueOf(random.nextInt(9100) + 10000).substring(1);
        return first + second + third;
    }

    /**
     * 隨機生成姓名
     *
     * @return
     */
    public static String generateRandomName() {
        Random random = new Random();
        String[] lastNames = {"趙", "錢", "孫", "李", "周", "吳", "鄭", "王", "馮", "陳", "褚", "衛", "蔣", "沈", "韓", "楊", "朱", "秦", "尤", "許",
                "何", "呂", "施", "張", "孔", "曹", "嚴", "華", "金", "魏", "陶", "姜", "戚", "謝", "鄒", "喻", "柏", "水", "竇", "章", "雲", "蘇", "潘", "葛", "奚", "範",
                "彭", "郎",
                "魯", "韋", "昌", "馬", "苗", "鳳", "花", "方", "俞", "任", "袁", "柳", "酆", "鮑", "史", "唐", "費", "廉", "岑", "薛", "雷", "賀", "倪", "湯", "滕", "殷",
                "羅", "畢", "郝", "鄔", "安", "常", "樂", "於", "時", "傅", "皮", "卞", "齊", "康", "伍", "餘", "元", "卜", "顧", "孟", "平", "黃", "和",
                "穆", "蕭", "尹", "姚", "邵", "湛", "汪", "祁", "毛", "禹", "狄", "米", "貝", "明", "臧", "計", "伏", "成", "戴", "談", "宋", "茅", "龐", "熊", "紀", "舒",
                "屈", "項", "祝", "董", "樑", "杜", "阮", "藍", "閔", "席", "季"};
        String girl =
                "秀娟英華慧巧美娜靜淑惠珠翠雅芝玉萍紅娥玲芬芳燕彩春菊蘭鳳潔梅琳素雲蓮真環雪榮愛妹霞香月鶯媛豔瑞凡佳嘉瓊勤珍貞莉桂娣葉璧璐婭琦晶妍茜秋珊莎錦黛青倩婷姣婉嫻瑾穎露瑤怡嬋雁蓓紈儀荷丹蓉眉君琴蕊薇菁夢嵐苑婕馨瑗琰韻融園藝詠卿聰瀾純毓悅昭冰爽琬茗羽希寧欣飄育瀅馥筠柔竹靄凝曉歡霄楓芸菲寒伊亞宜可姬舒影荔枝思麗 ";
        String boy =
                "偉剛勇毅俊峰強軍平保東文輝力明永健世廣志義興良海山仁波寧貴福生龍元全國勝學祥才發武新利清飛彬富順信子傑濤昌成康星光天達安巖中茂進林有堅和彪博誠先敬震振壯會思群豪心邦承樂紹功鬆善厚慶磊民友裕河哲江超浩亮政謙亨奇固之輪翰朗伯巨集言若鳴朋斌樑棟維啟克倫翔旭鵬澤晨辰士以建家致樹炎德行時泰盛雄琛鈞冠策騰楠榕風航弘";
        //獲得一個隨機的姓氏
        String name = lastNames[random.nextInt(lastNames.length - 1)];
        //可以根據這個數設定產生的男女比例
        int j = random.nextInt(girl.length() - 2);
        if (random.nextInt(3) == 2) {
            name += j % 2 == 0 ? girl.substring(j, j + 2) : girl.substring(j, j + 1);
        } else {
            name += j % 2 == 0 ? boy.substring(j, j + 2) : boy.substring(j, j + 1);
        }

        return name;
    }
}
  • 後續補上身份證/銀行卡/郵箱/暱稱等資訊