java中只有 int型 而没有 unsign integer 和 signed之分。我现在遇到个问题,一个文件转变成 inputstream后
原来的 8bit 16 bit,32bit unsigned integer 和 signed integer
应该如何转成 java中的基本数据类型?现在别人告诉我下面的规则,但是我不会转,请大家帮忙
java 类型
8bit unsigned integer ---> short
8bit signed integer ---> byte
16bit unsigned integer ---> int
16bit signed integer ---> short
32bit unsigned integer ---> long
32bit signed integer ---> int另外inputstream中的字节如何转成 float感谢大家帮忙
原来的 8bit 16 bit,32bit unsigned integer 和 signed integer
应该如何转成 java中的基本数据类型?现在别人告诉我下面的规则,但是我不会转,请大家帮忙
java 类型
8bit unsigned integer ---> short
8bit signed integer ---> byte
16bit unsigned integer ---> int
16bit signed integer ---> short
32bit unsigned integer ---> long
32bit signed integer ---> int另外inputstream中的字节如何转成 float感谢大家帮忙
比如8位无符号整数可以表示0~255,11111111表示255,而到java中,如果用byte表示的话,这个值就成为-127了,所以我们可以使用short来表示,
0000 0000 1111 1111。你可以参考java.io.DataInputStream这个类的设计。
比如public final int readUnsignedByte()
这个方法,读一个字节的无符号整数,结果使用一个int来表示。
读取无符号short的方式也类似,
public final int readUnsignedShort()只要结果类型(这里是int)能够包含无符号数表示的范围即可。处理的时候注意大小尾问题。
union {
int i;
float f;
} u;