在运行时确定可用的运算符

时间:2010-09-27 07:38:45

标签: java class operator-keyword getmethod

我希望能够在运行时检索对象的可用运算符,可能与getMethod()调用的方式类似。

特别是,我需要能够在运行时调用对象的less-than / greater-than运算符。

基本上,我有一堆基元被转换为Object对象类型。我需要在运行时进行它们之间的比较。 (我知道被比较的对象将具有相同的原始类型,并且已经实现了我自己的类型检查)。

或者..也许有一种方法可以将这些对象以编程方式转换回原始类型,并使用它们的原生比较运算符......不知怎的?

感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

Java无法获得可用的运算符。为了比较,该类应该(您也可以通过反射来实现)实现Comparable接口。

答案 1 :(得分:1)

如果它们是自动装箱的基本类型,则除了布尔值之外的所有类型的算术运算符集都是相同的,并且除了两种FP类型之外,位运算符集也是相同的。