在Java 中將Long 轉換為位元組數組並傳回
透過TCP 連接傳輸資料時,可能需要將long 轉換為一個位元組數組。要實現此轉換,您可以利用以下方法:
<code class="java">public byte[] longToBytes(long x) { ByteBuffer buffer = ByteBuffer.allocate(Long.BYTES); buffer.putLong(x); return buffer.array(); } public long bytesToLong(byte[] bytes) { ByteBuffer buffer = ByteBuffer.allocate(Long.BYTES); buffer.put(bytes); buffer.flip(); return buffer.getLong(); }</code>
為了避免過度建立ByteBuffer,請考慮使用如下所示的類別:
<code class="java">public class ByteUtils { private static ByteBuffer buffer = ByteBuffer.allocate(Long.BYTES); public static byte[] longToBytes(long x) { buffer.putLong(0, x); return buffer.array(); } public static long bytesToLong(byte[] bytes) { buffer.put(bytes, 0, bytes.length); buffer.flip(); return buffer.getLong(); } }</code>
記住,它通常是最好使用像Guava 這樣的函式庫來完成這項任務。但是,對於本機 Java 解決方案,這些方法提供了一種可靠的方法來處理長到位元組數組的轉換。
以上是如何在 Java 中將 Long 轉換為位元組數組並返回?的詳細內容。更多資訊請關注PHP中文網其他相關文章!