我正在开发一个使用一些原生调用的Java程序。
您是否知道将jshort
转换为unsigned short
的简便方法?或者,我可以使用等效类型吗?
在原生代码中,我收到jshort
值,我需要将此值用作GLushort
。
有什么建议吗?
感谢。
答案 0 :(得分:1)
好吧,首先看wikipedia。 jshort
实际上是short
(已签名),因此要转换它,您必须处理负值。
为什么不使用jchar
因为它直接映射到unsigned short
- 然后你可以直接投射。
jchar jC = ....;
GLushort s = (GLushort) jC;
答案 1 :(得分:1)
添加
& 0xFF
它!它使它无符号:D
答案 2 :(得分:0)
您可以在代码中转换为GLushort
。
jshort
已签名的事实无关紧要,除非该参数实际上可用于保存负值和您正在Java端进行算术或整数比较。