当值相同但类型不同时比较两个变量(例如Int16,Int32,Int64)

Jam*_*ing 5 .net c#

我需要比较两个变量,以确定它们是否相同.这些变量被转换为"对象",可以分配任何.NET类型.

我遇到的问题是它们是否都是数字.在它们具有相同值(例如它们都是-1)但具有不同类型(例如,一个是Int32,另一个是Int64)的情况下,然后object.Equals返回false.

是否有一种比较通用的方法来比较忽略变量类型的值,只看数值?

Fem*_*ref 0

只需使用常用的运算符==<例如 等。Int16 将自动转换为 Int32,因为这样做不会丢失信息。Int* 是值类型,因此值会自动进行比较。