如何比较在.NET 2.0中存储为Objects的两个数值(SByte,Double)?

时间:2015-03-11 12:34:17

标签: .net compare .net-2.0 boxing icomparer

在我的自定义排序算法中,我需要比较存储为数组中的对象的数字类型。我们可以将SByte,Double,Int32等值混合在一个数组中。如何在IComparer实现中比较该数组的两个值?


一个例子。我们假设我们有两个数值:

object var1 = (sbyte)-8;
object var2 = (double)123.456;

如果像下面这样的代码有效,那就太好了,但它失败了:

IComparable cmp1 = var1 as IComparable;
IComparable cmp2 = var2 as IComparable;
MessageBox.Show(cmp1.CompareTo(cmp2).ToString());

如何比较.NET 2.0中的两个盒装数值?

0 个答案:

没有答案