Java 正在初始化类型尚未确定的列表

Java 正在初始化类型尚未确定的列表,java,generics,Java,Generics,我真的希望你能帮我做点什么。 对于我的Java课程,我需要设计一个通用的数组生成器。 这不会是一个问题,但出于某些愚蠢的原因,我不允许知道我的列表应该包含什么类型的对象,直到它被初始化 我知道我可以让它成为一个对象列表,但是内容应该保持它的属性 下面的代码大致显示了每个方法应该做什么 public class ArrayListBuilder<T> implements IBuilder<T> { private ArrayList<T> content;

我真的希望你能帮我做点什么。 对于我的Java课程,我需要设计一个通用的数组生成器。 这不会是一个问题,但出于某些愚蠢的原因,我不允许知道我的列表应该包含什么类型的对象,直到它被初始化

我知道我可以让它成为一个对象列表,但是内容应该保持它的属性

下面的代码大致显示了每个方法应该做什么

public class ArrayListBuilder<T> implements IBuilder<T> {

private ArrayList<T> content;

public ArrayListBuilder<T>(){
    content = new  ArrayList<T>();
}

public static ArrayListBuilder make() {
    return new ArrayListBuilder();
}

@Override
public void add(T t) {
    content.add(t);
}

@Override
public Collection<T> result() {
    return content;
}
公共类ArrayListBuilder实现IBuilder{
私有ArrayList内容;
公共ArrayListBuilder(){
content=newarraylist();
}
公共静态ArrayListBuilder make(){
返回新的ArrayListBuilder();
}
@凌驾
公共无效添加(T){
内容。添加(t);
}
@凌驾
公众收集结果(){
返回内容;
}
可以主要在Zip类中使用,该类从两个旧列表创建一个新列表

提前感谢,
特拉兹

编辑:我的问题是:我的T是完全随机的,新列表必须知道它包含T个对象,以用于针对所述对象的方法。但是我不能告诉ArrayList在创建时将包含什么

有没有一种方法可以使用类型T初始化它,然后完全更改它,并让类知道,安装了一个Ts集合之后,它现在应该返回一个其他类型的集合

ArrayList<Pair<Integer,String>> zipResult1 =
zip(ArrayListBuilder.make(), Arrays.asList(1,2,3), Arrays.asList(”4”,”5”,”6”));
ArrayList zipResult1=
zip(ArrayListBuilder.make()、Arrays.asList(1,2,3)、Arrays.asList(“4”、“5”、“6”);

给定的代码显示了一些需求,如您所见,make()方法,不能包含类型声明,并且仍然提供一对整数和字符串。

那么,您到底有什么问题?您的代码已经基本完成;缺少的是factory方法
make
不是泛型的。它还需要有一个类型参数:

public static <T> ArrayListBuilder<T> make() {
    return new ArrayListBuilder<T>();
}
公共静态ArrayListBuilder make(){
返回新的ArrayListBuilder();
}

“但出于某些愚蠢的原因,我不允许知道我的列表中应该包含什么类型的对象”如果我错了,请纠正我,但这不是泛型类型的全部想法吗?无论如何,你忘了描述你面临的问题。你得到了任何错误或错误的结果吗?@Pshemo“如果我错了,请纠正我”在这种情况下听起来有点老调重弹:)@Mena我总是会误解一些东西(英语不是我的第一语言;)@Pshemo很公平。在运行时不知道参数化类型的挫折感似乎在从泛型开始的人中很常见。至少对我来说是这样!