这是一个非常人性化的设计,也非常符合数学。
当然如果是10000001-1001-1001-1001-100000000001这样的,可不要想着缩写成:
11-11-11-11-11
不然代码运行的时候会以为这个UUID是00000011-0011-0011-0011-000000000011的缩写。
而且这仅限有连字符的16位UUID。
现在你知道了这种表现形式的UUID一共有32位(除去连接符),那么问题来了,之前的UUIDMost(UUID高位)和UUIDLeast(UUID低位)到底是啥呢?
在解答之前,作者建议你先去找一个进制转换器,以方便现学现做。
以刚才的00000001-0001-0001-0001-000000000001举例,现在它是16进制。
把前面3段和后面两段分开,并分别划成10进制,变成:4295032833和281474976710657这两个数。
这两个数就是这个UUID的高位以及低位了。其实高位以及低位就是将16进制的UUID切成两半然后划成10进制得出的数,说明白点,就是:
xxxxxxxx-xxxx-xxxx 这一段转换成10进制就是UUID Most
xxxx-xxxxxxxxxxxx 这一段转换成10进制就是UUID Least
The content is not finished, continue reading on the next page