在 java 中填充通用数组

Populating generic array in java

我正在尝试填充泛型类型的数组,但在我在这里使用的 Array.fill 之后它总是空的。我做错了什么?

  private <T> CartField<T>[] getPopulatedCart(T field) {
    CartField<T> cart = new CartField<>(field);
    CartField<T>[] cartFields = new CartField[0];
    Arrays.fill(cartFields, cart);
    return cartFields;
  }

这总是 returns 一个空数组,我可以在调试时验证购物车字段是否成功,即使在与 Arrays.fill(cartFields, cart) 它在同一行上检查购物车时也是如此显示值,但在 return 上数组为空。

如有任何帮助或指导,我们将不胜感激。

Arrays.fill 将填充数组的每个元素。您的数组大小为零,因此没有要填充的数组元素。

如果您需要一个只有一个元素的数组,您应该将其初始化为大小为 1。

CartField<T>[] cartFields = new CartField[1];  // size should be not empty