首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java UUID的long表示

问Java UUID的long表示
EN

Stack Overflow用户
提问于 2013-01-15 01:39:56
回答 1查看 3.2K关注 0票数 5

我使用UUID.toString()将大量的Java行作为行存储到HashMap中。由于数据非常庞大,很快就会抛出OutOfMemoryError。现在我正在考虑一种紧凑的方式来表示UUID,最好是像long这样的形式,然后我可以很容易地用该long表示重新构造UUID。这个是可能的吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-15 01:45:58

UUID本质上是一个数字,但它是一个128位的数字,它的大小是java长度的两倍。您可以使用BigInteger (这可能不比将UUID存储为字符串更节省空间),也可以将UUID封装在一个包含两个长字符的对象中-一个用于前64位,一个用于后64位。

给定UUID 550e8400-e29b-41d4-a716-446655440000,您可能希望创建两个长整形,一个包含数字0x550e8400e29b41d4,另一个包含数字0xa716446655440000。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14323653

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档