Peter Lawrey..

29

如果您不需要它是唯一的,您可以使用任何你喜欢的长度.

例如,您可以这样做.

Random rand = new Random();

char[] chars = new char[16];

for(int i=0;i

chars[i] = (char) rand.nextInt(65536);

if (!Character.isValidCodePoint(chars[i]))

i--;

}

String s = new String(chars);

这将给你几乎相同程度的随机性,但将使用\u0000和之间的每个可能的字符\ufffd

如果您需要可打印的ASCII字符,可以根据需要缩短,但唯一性的可能性会显着下降.可以做的是使用底座36而不是底座16

UUID uuid = UUID.randomUUID();

String s = Long.toString(uuid.getMostSignificantBits(), 36) + '-' + Long.toString(uuid.getLeastSignificantBits(), 36);

这将平均26个字符,最多27个字符.

您可以使用base64编码并将其减少为22个字符.

如果你使用base94你可以得到20个字符.

如果你使用\ u0000到\ ufffd的整个有效字符范围,你可以将它减少到只有9个字符或17个字节.

如果您不关心字符串,则可以使用16位,8位字节.

长度短点的uuid_如何减少使用randomUUID()生成的UUID的长度相关推荐

  1. 长度短点的uuid_更短且不失高效的UUID生成算法

    Java原生的UUID长度为36位,嫌长 这里自己实现了一套自己的算法,来生成较短的UUID 由雪花算法启发而来, 大致原理是利用时间戳+随机值做值,然后转换成62进制(当然这个进制数你也可以搞成更多 ...

  2. 长度短点的uuid_如何压缩UUID长度?

    二. 代码编写 private static String compressUUID(UUID uuid) { StringBuilder resultBuilder = new StringBuil ...

  3. 长度短点的uuid_UUID不失精度,长度改进

    在使用到uuid的时候,往往头疼于它的长度(如1bfe50d8-544e-4e8a-95b8-199ceff15268),于是乎就有了改写uuid的各种方法 1.去除"-"的uui ...

  4. 长度短点的uuid_Python生成短uuid的方法实例详解

    python的uuid都是32位的,比较长,处理起来效率比较低, 本算法利用62个可打印字符,通过随机生成32位UUID,由于UUID都为十六进制,所以将UUID分成8组,每4个为一组,然后通过模62 ...

  5. uuid设置长度_转发 微博 Qzone 微信 分布式系统ID的生成方法之UUID、数据库、算法、Redis、Leaf方案...

    点击上方「蓝字」关注我们 前言 一般单机或者单数据库的项目可能规模比较小,适应的场景也比较有限,平台的访问量和业务量都较小,业务ID的生成方式比较原始但是够用,它并没有给这样的系统带来问题和瓶颈,所以 ...

  6. 转:短网址(short URL)的实现_如何生成短链接URL?

    什么是短链接 ? 就是把普通网址,转换成比较短的网址.比如:这种http://t.cn/ E70Piib,在微博这些限制字数的应用里.好处不言而喻:短.字符少.美观.便于发布.传播. 我们应该都能想到 ...

  7. java sessionid长度_php中session_id()函数详细介绍,会话id生成过程及session id长度

    php中session_id()函数原型及说明session_id()函数说明:stringsession_id([string$id])session_id() 可以用来获取/设置 当前会话 ID. ...

  8. 增大表名最大长度_风电叶片材料的发展变迁史,及风力发电机叶片长度发展历程...

    2020年,能源领域最火的行业是风电,由于中国出台相关文件,截止12月31日为止,之后装机并网的风电机组将不能够获得电价补贴. 这个政策直接推动了国内风电市场的短期井喷.当然宏观因素背景是中国对于环保 ...

  9. 设计一个长方形类。成员变量包括:长度和宽度,成员函数除包括计算周长和计算面积外, 还包括用set方法来设置长方形的长度和宽度,以及用get的方法来获得长方形的长度和宽度 最后,编写一个测试程序来测试所

    本文为博主原创文章,未经博主允许不得转载. 版权为陈博超所有,第一次于2020年11月22日发表于BLOG上 本BLOG上原创文章未经本人许可,不得用于商业用途.转载请经允许后注明出处,否则保留追究法 ...

最新文章

  1. 逻辑斯蒂回归(Logistics Regression)
  2. 3D 视觉 相关知识-SLAM框架-常见方案对比
  3. R包reshape2,轻松实现长、宽数据表格转换
  4. python将照片转文字_Python将图片转化成文字
  5. 经典C语言程序100例之八九
  6. android fragment fragmenttransaction,Android FragmentTransaction 常用方法总结
  7. hive 修改分区备注_hive修改 表/分区语句
  8. 关于人工智能的实现(猜测)
  9. 蛋白质结构预测大赛top1方案分享
  10. Mac OS 使用笔记
  11. Verilog学习之路(1)— Quartus II 13.0下载安装和HelloWorld
  12. C#中取得日期的英文缩写
  13. 杨绛先生70句金句,请珍藏
  14. oracle+omf+格式,oracle omf
  15. 位置不可用无法访问 chkdsk无法修复的文件恢复方法
  16. 人工智能时代,数据分析如何帮助预测业务未来?
  17. 跳槽找工作避坑指南收集汇总
  18. STM32学习笔记(1):STM32简介
  19. 使用ajax完成图片上传
  20. android高仿小米时钟,Android高仿小米时钟

热门文章

  1. ad19生成gerber文件,AD10生成gerber文件的详细说明
  2. TypeScript 初体验:开发工具准备
  3. 根据ajax控制css样式,JQuery CSS样式控制 学习笔记
  4. python降序输出前十个单词和词频_python-计算列表中单词的频率并按频率排序
  5. 编译原理02--文法和语言
  6. 读《大数据日知录架构与算法》
  7. Java-SpringBoot发送验证码短信
  8. python subplot
  9. TCP三次握手抓包分析
  10. python 拟合曲线 置信区间_如何从曲线获得置信区间