java - Java 中的带符号字节,有什么好主意?

标签 java

<分区>

字节值在0到255之间,非常简单明了。然而,Java 并不这么认为,并决定将值介于 -128 和 128 之间,这毁了我和许多其他人的生活。

我只想知道有什么好主意?为什么每次我需要获取无符号字节值时都必须这样做:

int byteValue = (int) javaByte & 0xFF;

最佳答案

Java 只支持有符号整数。 byte 也是整数,所以 Java 在这里是一致的。

这不是 C 的情况,例如 char 类型没有定义它是 signed 还是 unsigned。你需要明确告诉。在我看来,这比说它默认为 signed 更糟糕。

无论如何,C 中 char 的初衷是一个字符串字符,其中 unsigned 有意义。在 Java 中,字符串字符有不同的类型 - char

关于java - Java 中的带符号字节,有什么好主意?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36362998/

相关文章:

java - 检查字段是否为空

java - Appium findElement 连续使用两次不工作

java - javax.servlet.http.Cookie 的 getDomain() 返回 null

java - 如何制作包含 Spring Bean 的 jar,并在 SpringBoot 应用程序中使用它?

java - 已删除的 APK 扩展文件仍然提供 NO_DOWNLOAD_REQUIRED

java - 在 Java 中什么时候将长度用作方法,什么时候用作属性?

java - 等待完成的 Java 进程

java - 用 boolean 值计数

java - 如何在 Java 中选择标题时选择 JTable 列

java - 我怎样才能让 java 的解析器容忍格式错误的 html?