緯度の値が double であり、ビット単位の AND 演算を実行した後、ビットを右シフトしたいと考えています。以下は私のコード行です:
pBuffer[1]=(latitude_decimal_degrees & 0xFF0000) >> 16;
ただし、double 値と int 値の間のビットごとの AND 演算はできません。正確な値が得られないため、緯度を int に変換できません。誰でもこれで私を案内できますか?
編集:私の要件は、基本的に次の vb.net コードを Java に変換することです。理由: 以下のコード行 (vb.net) は、Android アプリ用に「Basic4Android」で記述されたメソッドの一部です。まったく同じ方法を BlackBerry アプリに実装する予定です。したがって、サーバー側でデコードされる以下のようにまったく同じ値を生成する必要があります。
Dim pBuffer(11) As Int
Dim longitude_decimal_degrees As Double
pBuffer(1)=Bit.ShiftRight(Bit.And(latitude_decimal_degrees, 0xFF0000),16)
これらのコード行をどのように Java に変換できますか?