java - int[] 数组的outputStream.write()

标签 java arrays int byte outputstream

我正在寻找与 outputStream.write() 执行相同操作但接受 int 数组的东西。

实际上,我正在使用这个:outputStream.write(),但这个只接受bytebyte[]int

我可以使用byte[],但我想发送的值是

 [255,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255]

所以我可以使用byte[],因为范围仅从-127到127:/

在 Port_Com 上发送命令,Port_Com 只接受 19 字节的数据包,并且必须以 255 开头和结尾。

最佳答案

这是对字节的常见误解,因为谣言一再重复。

实际上,字节的范围是从

00000000 (binary) to   11111111 (binary)

如果您只对位模式感兴趣,则没有理由将字节解释为数字。特别是,没有理由将字节解释为有符号数字,只是因为 java 默认情况下就是这样做的。

因此,请继续,正如 Jon Skeet 所说,将整数转换为字节并写入这些字节。

关于java - int[] 数组的outputStream.write(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22474001/

相关文章:

.net - F# 中 int 类型的 NaN 等价物是什么?

python - 如何将 int 转换为十六进制字符串?

java - 当没有定义 getter/setter 方法时,JPA 提供者如何访问(私有(private))字段值?

java - 为什么在导出 processing.org java pdf 时只显示一个框?

java - eclipse中静态导入

c++ - 不使用递归求解所有二维字符串 vector 组合? (C++)

javascript - JSON 数据数组不是 JQPlot.js 的有效返回

java - 异常;必须被捕获或宣布被抛出

java - 最大化两个数组 B[j] − A[i] 的元素差异,其中 j > i

java - 如何表示整数的三角形?