CRC32相比MD5重复率较高,
不过我们仍然可以使用CRC32然后转长整形的方式将32位的UUID字符串压缩成更短的整形唯一标识。
1 /** 2 * 3 * @Title: getCRC32Value 4 * @author:liuyx 5 * @date:2015年11月6日下午5:26:12 6 * @Description: 获取字符串对应的重复概率较小的整形 7 * @param str 传入字符串 8 * @return 9 */ 10 public static String getCRC32Value(String str) { 11 12 CRC32 crc32 = new CRC32(); 13 crc32.update(str.getBytes()); 14 System.out.println(crc32.getValue()); 15 16 /*str = str.replace("-", ""); 17 str = str.replaceAll("[a-zA-Z]", ""); 18 if(str.length()>10) { 19 str = str.substring(str.length()-10); 20 }else if(str.length()==0) { 21 //String temp = Long.toString(System.currentTimeMillis()); 22 str = ""; 23 }*/ 24 return Long.toString(crc32.getValue()); 25 }
时间: 2024-10-03 22:26:10