Baytları imzalı/imzasız int veya kısa olarak dönüştürmem gerekir.2 veya 4 bayttan imzalı/imzasız kısa/int'ye dönüştürme
Aşağıdaki yöntemler doğru mu? Hangi imzalı ve hangisi imzasız?
Bayt düzeni: 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));
}
ve
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));
}
Bu dönüşüm formlarda sadece ilgileniyorum. Teşekkürler!
Fark yaratmıyor? Hala imzalanmış mı? –