1. 概述
在这篇简短教程中,我们将学习如何在Java中将字节数组与UUID进行转换。
2. 将UUID转换为字节数组
在纯Java中,我们可以轻松地将UUID转换为字节数组:
public static byte[] convertUUIDToBytes(UUID uuid) {
ByteBuffer bb = ByteBuffer.wrap(new byte[16]);
bb.putLong(uuid.getMostSignificantBits());
bb.putLong(uuid.getLeastSignificantBits());
return bb.array();
}
3. 将字节数组转换为UUID
同样简单,可以将字节数组转换回UUID:
public static UUID convertBytesToUUID(byte[] bytes) {
ByteBuffer byteBuffer = ByteBuffer.wrap(bytes);
long high = byteBuffer.getLong();
long low = byteBuffer.getLong();
return new UUID(high, low);
}
4. 测试我们的方法
让我们测试一下我们的方法:
UUID uuid = UUID.randomUUID();
System.out.println("Original UUID: " + uuid);
byte[] bytes = convertUUIDToBytes(uuid);
System.out.println("Converted byte array: " + Arrays.toString(bytes));
UUID uuidNew = convertBytesToUUID(bytes);
System.out.println("Converted UUID: " + uuidNew);
结果看起来像这样:
Original UUID: bd9c7f32-8010-4cfe-97c0-82371e3276fa
Converted byte array: [-67, -100, 127, 50, -128, 16, 76, -2, -105, -64, -126, 55, 30, 50, 118, -6]
Converted UUID: bd9c7f32-8010-4cfe-97c0-82371e3276fa
5. 总结
在这篇快速教程中,我们了解了如何在Java中进行字节数组与UUID之间的转换。
如往常一样,本文的示例代码可在GitHub上找到。