stdint.h for Java?

时间:2013-09-15 08:05:32

标签: java stdint

是否有一个实现C标准数据类型的Java库?

在Java中,所有内容都已签名,因此使用byte存储uint8_t会遇到一些问题,例如:

byte test = (byte) 0xf3;
System.out.println("test = " + test);

打印

test = -13

而不是

test = 243

我想到这样的事情:

UInt8 test = new UInt8(0xf3);
System.out.println("test = " + test.toInt());

2 个答案:

答案 0 :(得分:2)

有一种解决方法,试试System.out.println("test = " + (0xff & test));你会得到243

答案 1 :(得分:0)

我认为没有任何好的库可以实现C / POSIX标准数据类型。

最近我不得不在Java程序中使用预定义的POSIX常量,例如S_IREADS_IFDIR,我必须创建自己的常量列表类...

正如@Evgeniy Dorofeev建议的那样,试着找到解决方法:)