gpt4 book ai didi

java - 字节/整数转换

转载 作者:行者123 更新时间:2023-12-01 22:24:54 24 4
gpt4 key购买 nike

所以我正在尝试获取一个 int ex。 3240 并转换为打印 -88 的字节。

        final int x = (int) (buffer[bufferIndex++] * 32767.0);
System.out.println("1 " + x);
byteBuffer[i] = (byte) x;
System.out.println("2 " + (byte) x);
System.out.println("3 " + (int) byteBuffer[i]);

我在从字节转换回 int 时遇到问题。我怎样才能把-88变成3240呢?

最佳答案

来自 Java Language Specification关于缩小原始转换

A narrowing primitive conversion may lose information about the overall magnitude of a numeric value and may also lose precision and range.

当您将 int3240 转换为字节值 -88 时,您丢失了截断字节中的信息。 int10920 也会转换为 -88。大量其他 int 值也是如此。

无法从 3240 获取 -88

关于java - 字节/整数转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28978718/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com