数组列表中的泛型错误

时间:2012-02-04 22:40:14

标签: java android generics arraylist

我正在创建一个应用程序,我使用的是FragmentPager。要使用FragmentPager,我必须使用FragmentPagerAdapter支持它。我有一个我已经构建了名为Nameable的接口,我想创建一个数组列表,您可以将Fragments放在那里实现Nameable接口。

我尝试过这些方法,但它给了我一个错误,我不知道为什么,因为它是一个java的东西,并且在互联网上有很多这样的例子。

这是我尝试过的:

private ArrayList<Fragment extends Nameable> mFragmentList;

错误:

  

令牌“extends”的语法错误,预期

其他事情(这不是正确的方法,但我尝试过)

private ArrayList<? extends Fragment & Nameable> mFragmentList;

错误:

  

令牌“&amp;”的语法错误,预期

为什么这句话给我一个错误?我很确定这是正确的做法。

谢谢,Elad。

1 个答案:

答案 0 :(得分:3)

这应该足够了:

private ArrayList<Fragment> mFragmentList;
泛型签名中的

extendssuper用于约束类型参数,而不是实际类型。已Fragment类已定义Nameable实现Fragment,您无需在任何地方重复此操作。