ArrayList和Array的Java通用问题

ArrayList和Array的Java通用问题,java,arrays,generics,arraylist,Java,Arrays,Generics,Arraylist,实际上,我想创建一个通用方法,在给定元素中查找最大元素。我也在扩大可比性。现在的问题是,我将发送元素,有时作为数组,有时作为ArrayList。因此,我需要创建一个通用方法,该方法可以同时接受这两个参数并返回最大值。主要问题是,在函数原型中,如果我提到方括号,那么它并不表示ArrayList,反之亦然,只需创建两个具有不同签名的方法。您可以将一种方法与另一种方法区分开来,以避免重复实现: public <T> T getMax(T[] array) { return getM

实际上,我想创建一个通用方法,在给定元素中查找最大元素。我也在扩大可比性。现在的问题是,我将发送元素,有时作为数组,有时作为ArrayList。因此,我需要创建一个通用方法,该方法可以同时接受这两个参数并返回最大值。主要问题是,在函数原型中,如果我提到方括号,那么它并不表示ArrayList,反之亦然,只需创建两个具有不同签名的方法。您可以将一种方法与另一种方法区分开来,以避免重复实现:

public <T> T getMax(T[] array)
{
    return getMax(Arrays.asList(array));
}

public <T> T getMax(List<T> list)
{
    // actually get the max
}
public T getMax(T[]数组)
{
返回getMax(Arrays.asList(array));
}
公共T getMax(列表)
{
//实际上是最大值
}

Arrays.asList()
是否需要第二个方法作为T的返回类型?或者只是一个最大值?@KushalShinde OP想要“给定元素中的最大元素”。在本例中,
T
是这些元素的类型和最大元素的类型,因此是的,方法的返回类型是
T