Integer.toBinaryString(355) = 0000000101100011
and
を使用して 10 進数を 2 進数に変換することを知っていInteger.toBinaryString(-355) = 1111111010011101
ます (32 ビットの結果の下位 16 ビットを取得します)。
私がやりたいのは、逆の方法で、16 ビットの 2 の補数のバイナリ文字列を取り、10 進数に変換することです。
すなわち
0000000000110010 = 50
1111111111001110 = -50
それよりも1111111111001110 = 65486
どうすればいいですか?