小伙伴在使用C#的时候,有木有遇到这种情况,double类型转化成ushort类型时变为零(Unity到处安卓APK时遇到的的情况)。这样导致数据信息的丢失。下面有两种解决办法
1:通过自己写算法实现
static public ushort ConvertUShort(double value)
{
if(value>=0)
{
return (ushort)value;
}
else
{
return (ushort)(ushort.MaxValue + 1 + Convert.ToInt32(value));
}
}
2:实现两次转型:(ushort)((short)doublevalue)
希望小伙伴看到后对大家有所帮助。