3
什麼是C#中Java的float.floatToRawIntBits方法實現?什麼是C#中Java的float.floatToRawIntBits等效方法?
什麼是C#中Java的float.floatToRawIntBits方法實現?什麼是C#中Java的float.floatToRawIntBits等效方法?
如果我理解的Java版本正確的應該是:
float value = 123.23F;
byte[] bytes = BitConverter.GetBytes(value);
int result = BitConverter.ToInt32(bytes, 0);
這使代表浮動到一個整數字節。
或者,更復雜(但可能更快)的方式來做到這一點是建立一個結構:
[StructLayout(LayoutKind.Explicit)]
public struct FloatToIntConverter
{
[FieldOffset(0)]
public int IntValue;
[FieldOffset(0)]
public float FloatValue;
}
FloatToIntConverter converter = new FloatToIntConverter();
converter.FloatValue = value;
int result2 = converter.IntValue;
是的,這就是我想要的。謝謝。 – rodins 2012-01-09 14:45:03