如何声明unsigned shortJava中的值?
发布于 2009-12-04 01:19:11
Java没有无符号类型。你需要它做什么?
然而,Java确实有'byte‘数据类型。
发布于 2009-12-04 01:19:11
你不能,真的。Java没有任何无符号数据类型,除了char。
无可否认,你可能使用char-它是一个16位的无符号类型--但在我看来这太可怕了,因为char显然是针对文本的:当代码使用char,我希望它用于表示程序感兴趣的文本的UTF-16代码单元,而不是与文本无关的任意无符号16位整数。
发布于 2009-12-04 02:20:40
如果您确实需要一个恰好为16位的值:
解决方案1:使用可用的有符号短码,不要担心符号,除非您需要进行比较(<,<=,>,>=)或除法(/,%,>>)操作。请参见这个答案了解如何处理带符号的数字,就好像它们是无符号的一样。
解决方案2(解决方案1不适用):使用int的低16位,并在必要时使用& 0xffff删除高位。
https://stackoverflow.com/questions/1841461
复制相似问题