<分区>
我有以下代码片段,我不明白为什么它不起作用:
List<Object[]> listOfObjectArrays;
listOfObjectArrays = new ArrayList<>();
Object[] objectArray = new Object[] {1, "two", null};
listOfObjectArrays.add(objectArray);
// works just fine
listOfObjectArrays = Arrays.asList(objectArray, objectArray);
// works just fine
listOfObjectArrays = Arrays.asList(objectArray); // *
// compile error: Incompatible types. Required: List<java.lang.Object[]> Found: List<java.lang.Object>
listOfObjectArrays = Arrays.asList(new Object[] {1, "two", null});
// compile error: Incompatible types. Required: List<java.lang.Object[]> Found: List<java.lang.Object>
有人能给我指出正确的方向吗?
我已经看到了 Jon Skeet's answer在另一个问题上,但最后一个例子对我不起作用。即使我在标有 *
的行中向 Object
或 Object[]
添加强制转换,我也会收到编译错误。