java - 随机不重复昵称怎么生成?
阿神
阿神 2017-04-17 17:46:14
0
5
949

随机不重复昵称怎么生成?

阿神
阿神

闭关修行中......

reply all(5)
伊谢尔伦
  1. HashSet determines whether it is duplicated

  2. UUID guaranteed not to be repeated

Peter_Zhu

You can add random Chinese characters, random English strings, and random numbers. If repeated, the following numbers will increase in sequence.

洪涛

package test;

import java.io.UnsupportedEncodingException;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Random;
public class RandomChinese {

public static void main(String args[]) {
    HashSet<String> set = new HashSet<String>();
    for (int i = 0; i < 100; i++) {
        String chineseName = getRandomJianHan(3);
        if (!set.contains(chineseName)) {
            set.add(chineseName);
        }
    }
    Iterator<String> iterator = set.iterator();
    while (iterator.hasNext()) {
        System.err.print(iterator.next() + "\n");
    }
}
public static String getRandomJianHan(int len) {
    String ret = "";
    for (int i = 0; i < len; i++) {
        String str = null;
        int hightPos, lowPos; // 定义高低位
        Random random = new Random();
        hightPos = (176 + Math.abs(random.nextInt(39))); // 获取高位值
        lowPos = (161 + Math.abs(random.nextInt(93))); // 获取低位值
        byte[] b = new byte[2];
        b[0] = (new Integer(hightPos).byteValue());
        b[1] = (new Integer(lowPos).byteValue());
        try {
            str = new String(b, "GBK"); // 转成中文
        } catch (UnsupportedEncodingException ex) {
            ex.printStackTrace();
        }
        ret += str;
    }
    return ret;
}

}

伊谢尔伦
/**
     * 生成交易号
     */
    public function generatePaymentId()
    {
        $i = rand(0, 9999);
        do {
            if (9999 == $i) {
                $i = 0;
            }
            $i++;
            $id = time() . str_pad($i, 4, '0', STR_PAD_LEFT);
            $row = (new Query())->from(self::tableName())->where(['id' => $id])->exists();
        } while ($row);
        return $id;
    }

I won’t comment on the code above

Ty80

Plan 1, find a place, grab a nickname library
Plan 2, find a Chinese vocabulary library, artificially large to low, random combination between the two words

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template