バイトをsigned/unsigned intまたはshortに変換する必要があります。2バイトから4バイトをsigned/unsigned short/intに変換します
以下の方法は正しいですか?署名されている署名付き署名は何ですか?
バイト順:LITTLE_ENDIAN
public static int convertTwoBytesToInt1(byte b1, byte b2) {
return (int) ((b2 << 8) | (b1 & 0xFF));
}
VS.
public static int convertTwoBytesToInt2(byte b1, byte b2) {
return (int) (((b2 & 0xFF) << 8) | (b1 & 0xFF));
}
と
public static int convertFourBytesToInt1(byte b1, byte b2, byte b3, byte b4){
return (int) ((b4<<24)+(b3<<16)+(b2<<8)+b1);
}
VS.
public static int convertFourBytesToInt2(byte b1, byte b2, byte b3, byte b4){
return (int) (((b4 & 0xFF) << 24) | ((b3 & 0xFF) << 16) | ((b2 & 0xFF) << 8) | (b1 & 0xFF));
}
私は、この変換の形でのみ興味があります。ありがとう!
これは、はるかに効率的にすることができ、あなただけの 'convertFourBytesToInt1 b1ので –