长度短点的uuid_如何减少使用randomUUID()生成的UUID的长度
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的长度相关推荐
- 长度短点的uuid_更短且不失高效的UUID生成算法
Java原生的UUID长度为36位,嫌长 这里自己实现了一套自己的算法,来生成较短的UUID 由雪花算法启发而来, 大致原理是利用时间戳+随机值做值,然后转换成62进制(当然这个进制数你也可以搞成更多 ...
- 长度短点的uuid_如何压缩UUID长度?
二. 代码编写 private static String compressUUID(UUID uuid) { StringBuilder resultBuilder = new StringBuil ...
- 长度短点的uuid_UUID不失精度,长度改进
在使用到uuid的时候,往往头疼于它的长度(如1bfe50d8-544e-4e8a-95b8-199ceff15268),于是乎就有了改写uuid的各种方法 1.去除"-"的uui ...
- 长度短点的uuid_Python生成短uuid的方法实例详解
python的uuid都是32位的,比较长,处理起来效率比较低, 本算法利用62个可打印字符,通过随机生成32位UUID,由于UUID都为十六进制,所以将UUID分成8组,每4个为一组,然后通过模62 ...
- uuid设置长度_转发 微博 Qzone 微信 分布式系统ID的生成方法之UUID、数据库、算法、Redis、Leaf方案...
点击上方「蓝字」关注我们 前言 一般单机或者单数据库的项目可能规模比较小,适应的场景也比较有限,平台的访问量和业务量都较小,业务ID的生成方式比较原始但是够用,它并没有给这样的系统带来问题和瓶颈,所以 ...
- 转:短网址(short URL)的实现_如何生成短链接URL?
什么是短链接 ? 就是把普通网址,转换成比较短的网址.比如:这种http://t.cn/ E70Piib,在微博这些限制字数的应用里.好处不言而喻:短.字符少.美观.便于发布.传播. 我们应该都能想到 ...
- java sessionid长度_php中session_id()函数详细介绍,会话id生成过程及session id长度
php中session_id()函数原型及说明session_id()函数说明:stringsession_id([string$id])session_id() 可以用来获取/设置 当前会话 ID. ...
- 增大表名最大长度_风电叶片材料的发展变迁史,及风力发电机叶片长度发展历程...
2020年,能源领域最火的行业是风电,由于中国出台相关文件,截止12月31日为止,之后装机并网的风电机组将不能够获得电价补贴. 这个政策直接推动了国内风电市场的短期井喷.当然宏观因素背景是中国对于环保 ...
- 设计一个长方形类。成员变量包括:长度和宽度,成员函数除包括计算周长和计算面积外, 还包括用set方法来设置长方形的长度和宽度,以及用get的方法来获得长方形的长度和宽度 最后,编写一个测试程序来测试所
本文为博主原创文章,未经博主允许不得转载. 版权为陈博超所有,第一次于2020年11月22日发表于BLOG上 本BLOG上原创文章未经本人许可,不得用于商业用途.转载请经允许后注明出处,否则保留追究法 ...
最新文章
- 逻辑斯蒂回归(Logistics Regression)
- 3D 视觉 相关知识-SLAM框架-常见方案对比
- R包reshape2,轻松实现长、宽数据表格转换
- python将照片转文字_Python将图片转化成文字
- 经典C语言程序100例之八九
- android fragment fragmenttransaction,Android FragmentTransaction 常用方法总结
- hive 修改分区备注_hive修改 表/分区语句
- 关于人工智能的实现(猜测)
- 蛋白质结构预测大赛top1方案分享
- Mac OS 使用笔记
- Verilog学习之路(1)— Quartus II 13.0下载安装和HelloWorld
- C#中取得日期的英文缩写
- 杨绛先生70句金句,请珍藏
- oracle+omf+格式,oracle omf
- 位置不可用无法访问 chkdsk无法修复的文件恢复方法
- 人工智能时代,数据分析如何帮助预测业务未来?
- 跳槽找工作避坑指南收集汇总
- STM32学习笔记(1):STM32简介
- 使用ajax完成图片上传
- android高仿小米时钟,Android高仿小米时钟