Java - 一种采用可变参数并返回数组列表的方法?

标签 java generics arraylist

我对泛型不是很满意,因此还没有找到解决方案。我有这三种方法:

public static List<ObjectA> objectAAsList(ObjectA ... items) {
    return new ArrayList<>(Arrays.asList(items));
}

public static List<ObjectB> objectBAsList(ObjectB ... items) {
    return new ArrayList<>(Arrays.asList(items));
}

public static List<ObjectC> objectCAsList(ObjectC ... items) {
    return new ArrayList<>(Arrays.asList(items));
}

我怎样才能创建一个单一的方法来获取 T(或其他东西)的可变参数并创建它的 ArrayList?

最佳答案

只需用类型变量替换您的类型:

public static <T> List<T> genericAsList(T ... items) {
    return new ArrayList<>(Arrays.asList(items));
}

请注意,您可以查看如何 Arrays.asList被声明,因为从类型的角度来看,它做的事情基本相同。

关于Java - 一种采用可变参数并返回数组列表的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39034234/

相关文章:

java - 验证来自添加到数组中的扫描仪的用户输入

Java GridBagLayout 无法正确设置我的 GUI

java - 使用超大的 json 文件。返回总是内存不足

java - 如何为 @Async 方法使用自定义执行器?

java - 我需要获取一个通用惰性加载器列表,它将实例化其推断类型的实例

c# - 在运行时创建通用列表

c# - 我应该使用接口(interface)来强制泛型吗?

Java:从多个方法中创建通用方法

java - 解析java字符串中的 anchor 标记

java - 使用 Scanner 填充对象的 ArrayList