Java为什么不包括对无符号整数的支持?
在我看来,这是一个奇怪的遗漏,因为它们允许人们编写不太可能在意外大的输入上产生溢出的代码。
此外,使用无符号整数可以是一种自我证明的形式,因为它们指示无符号int打算保留的值永远不会为负。
最后,在某些情况下,无符号整数对于某些操作(例如除法)可能更有效。
包括这些的不利之处是什么?
在两行之间阅读时,我认为逻辑是这样的:
为了实现某些算法,有时需要无符号算术,但是将要实现这种算法的那种程序员也将具有“工作”能力,以对带符号数据类型进行无符号算术 通常,我会说这是一个合理的决定。可能,我会:
将字节设置为无符号,或者至少为该数据类型提供了一个有符号/无符号的替代名称(可能具有不同的名称)(将其签名有利于一致性,但是什么时候需要一个有符号字节?)