对于Java中具有泛型参数的循环

Mic*_*bor 1 java generics parameters

简短的问题 - 它应该如何工作?

private <T> boolean hasElement(T array, T element) {
    for (T el : array) {
        if (el.equals(element)) {
            return true;
        }
    }
    return false;
}
Run Code Online (Sandbox Code Playgroud)

现在它显示了for循环开始时的错误.

NPE*_*NPE 12

private <T> boolean hasElement(T[] array, T element) {
                                ^^
Run Code Online (Sandbox Code Playgroud)

  • 自_ 1.0以来,我_think_`String []`已经可以向上转换为`Object []`.(请注意,我经常希望你是对的,它不会这样工作......) (2认同)