根據種子生成手機號碼

一、這裏取四個種子Id(評價id):java

10006七、10006八、10006九、100070算法

二、手機號碼段比較多,這裏取經常使用的,我取了28個,做爲手機號碼前三個:spa

130,185,158,134,180,131,145,132,133,181,135,136,150,187,153,182,137,186,138,156,151,159,139,157,189,155,188,152code

三、算法步驟:string

a,評價id對28取餘(定位到取手機前三個數字),此值做爲手機號碼的前三位it

b,  評價id對975取餘(純粹爲了取餘而已,獲取不一樣的數字)class

c,  將a,b結果相加mobile

d,將c步驟的結果再加上a步驟獲取的手機前三個號碼,此值做爲最終手機號碼的後三位數據

e,最後的結果手機號碼只展現前三位和後三位,中間數據不展現,用‘*’替代static

注意:要注意d步驟獲取的值,有可能小於三位,個人作法是直接補0,簡單粗暴

下面貼出代碼:

public class PhoneNumUtils {
    public static String makePhoneNumber(Integer id) {

        int mobilePrefixs[] = { 130, 185, 158, 134, 180, 131, 145, 132, 133, 181, 135, 136, 150, 187, 153, 182, 137,
                186, 138, 156, 151, 159, 139, 157, 189, 155, 188, 152 };
        int mobilePrefix = mobilePrefixs[id % 28];
        int maskCode = id % 18 + id % 975;
        String maskCodeStr = ((Integer) (maskCode + mobilePrefix)).toString();
        switch (maskCodeStr.length()) {
            case 1:
                maskCodeStr = "00" + maskCodeStr;
                break;
            case 2:
                maskCodeStr = "0" + maskCodeStr;
                break;
            default:
                maskCodeStr = maskCodeStr.substring(0, 3);
                break;
        }
        return mobilePrefix + "*****" + maskCodeStr;
    }

    public static void main(String[] args) {
        System.out.println(makePhoneNumber(100067));
        System.out.println(makePhoneNumber(100068));
        System.out.println(makePhoneNumber(100069));
        System.out.println(makePhoneNumber(100070));
    }
    
    // 最後輸出結果:
    157*****779
    189*****813
    155*****781
    188*****816
    能夠直接用來在頁面上展現了,評價像真的,就開始誘導顧客購買吧!!!
相關文章
相關標籤/搜索