如何将对象类型转换为float,其中object可以是任何类型的数字,如int,long,float,double等

时间:2015-06-25 15:14:46

标签: c# casting numbers

我有对象流,可以是int,short,long,float等数字类型... 将其转换为数字的最佳方法是什么?最好的方式可能是某种东西 ToNumber(object oNumber)

// Best magic could be
var number = (somemagic) oNumber;

float operator1 = oNumber is int 
  ? (float)(int)oNumber
  : oNumber is long 
     ? (float)(long)oNumber
     : oNumber is float 
        ? (float)oNumber 
        : (float)(int)oNumber;

假设float将能够取所有数字期望加倍

1 个答案:

答案 0 :(得分:10)

我相信Convert.ToSingle将能够处理你抛出的任何“核心”数字类型。