声明一个具有多种类型的数组列表



我想声明一个具有多种类型的ArrayList,以便更清楚地执行以下操作:

public ArrayList<Integer, String, Boolean> a = new ArrayList<Integer, String, Boolean>();

我知道该示例不起作用ArrayList因为它只能用一个类型参数进行参数化。

HashMap可以允许我使用两个参数,但这在我的情况下还不够。

我知道我可以声明一个具有多个属性的类并将其用作ArrayList中的参数,但我不想要这种方法。

难道没有任何方法可以声明具有多种类型的List,或者使用某些internal class来执行此操作?

你可以像这样创建它

public class Tuple<A, B, C> {
    public A First;
    public B Second;
    public C Third;    
}

你这样声明

List< Tuple <Integer, String, Bool> listOfTuple;

或者查看这个 javatuples http://www.javatuples.org 来自 1-10 个参数的元组

番石榴中的表格结构似乎很好地满足您的所有需求。

你可以使用多态性,创建一个接口,比如说ListElement。要添加到此列表的所有对象都必须实现此接口。然后只需使用 ListElement 的 ArrayList

另一种可能性(因为你使用的是像Integer这样的类),你可以使用对象的ArrayList,因为所有对象都扩展了类Object。

相关内容

  • 没有找到相关文章

最新更新