一、前言
基于java.util.UUID自定义实现UUIDGenerator序列生成器,实现UUID随机序列生成、获取指定个数序列数组、生成8位指定方位序列,详情参见代码示例。
二、代码示例
import java.util.UUID;@b@@b@public class UUIDGenerator {@b@@b@ public static String[] chars = { "a", "b", "c", "d", "e", "f", "g", "h",@b@ "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u",@b@ "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5", "6", "7",@b@ "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K",@b@ "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X",@b@ "Y", "Z" };@b@@b@ public static String generateWithoutLineUUID() {@b@ String s = UUID.randomUUID().toString();@b@@b@ return s.substring(0, 8) + s.substring(9, 13) + s.substring(14, 18)@b@ + s.substring(19, 23) + s.substring(24);@b@ }@b@@b@ public static String generateWithLineUUID() {@b@ String s = UUID.randomUUID().toString();@b@ return s;@b@ }@b@@b@ public static String[] generateUUID(int number) {@b@ if (number < 1)@b@ return null;@b@@b@ String[] ss = new String[number];@b@ for (int i = 0; i < number; ++i)@b@ ss[i] = generateWithoutLineUUID();@b@@b@ return ss;@b@ }@b@@b@ public static String generate8Uuid() {@b@ StringBuffer shortBuffer = new StringBuffer();@b@ String uuid = UUID.randomUUID().toString().replace("-", "");@b@ for (int i = 0; i < 8; ++i) {@b@ String str = uuid.substring(i * 4, i * 4 + 4);@b@ int x = Integer.parseInt(str, 16);@b@ shortBuffer.append(chars[(x % 62)]);@b@ }@b@ return shortBuffer.toString();@b@ }@b@@b@}