在Java中,我将如何使用泛型创建一个max函数,该函数需要两个相同类型的Comparable对象并返回较大的对象?使用泛型创建最大函数返回较大的一个
我尝试:
public static <T extends Comparable> T max(T obj1, T obj2)
{
return (((obj1).compareTo(obj2) >= 0) ? obj1 : obj2);
}
(。如果它们均等于它返回OBJ1)
该方法基于代码我发现在http://www.informit.com/articles/article.aspx?p=170176&seqNum=3。
然而,当我编译我得到这样的警告(与-Xlint编译:未选中): 警告:未经检查]作为原料类型的成员未经检查调用的compareTo(T)java.lang.Comparable的
类似于'Collections.max()'。 – 2010-07-27 20:52:31
非常感谢。 – ladaghini 2010-07-27 23:32:33
@MarkPeters:你能解释Collections.max()函数的泛型部分吗?它太混乱了。或者请提供相关链接。 – IfOnly 2017-05-04 15:40:34