我想在Little Endian中将2byte数组转换为Int而不使用java.nio。*。我怎么能做到这一点?
关于
答案 0 :(得分:1)
这应该是技巧int val = (anArray[1] & 0xff) << 8 + (anArray[0] & 0xff);
答案 1 :(得分:1)
刚刚发现此帖并意识到接受的答案无法正常运行,因为+
的优先级高于<<
。
因此,它应该是int val = ((anArray[1] & 0xff) << 8) + (anArray[0] & 0xff);
。
答案 2 :(得分:0)
你有2个字节意味着16位 因为在小印度,最不重要的16位单位存储该值 你可以在java中使用bitvise操作
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/op3.html