在Java中的ArrayLists之间进行转换

前端之家收集整理的这篇文章主要介绍了在Java中的ArrayLists之间进行转换前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
对不起,我以为这是一个继承的问题:它一直是一个ArrayList问题!

好的,我的问题比我想象的更具体.所以我有两个班的家庭.卡片和区域.区域是持卡的箱子.

Zone,ZoneList和ZoneMap的前两个子类别是存储卡的两种不同方式.进一步的子类,如Hand和PokerHand,都有自己的具体方法来处理他们存储的卡.

它变得复杂的是,Card还有子类,如PokerCard,ZoneList和ZoneMap的子类旨在组织这些.

所以在ZoneList中我已经保护了ArrayList< Card> cardBox;在PokerHand中,我希望能够声明cardBox = new ArrayList&PokerCard>();因为PokerCard是一张卡.我得到的错误是,我显然不能在Card和GangCard之间投掷到ArrayLists …所以我试图通过重新声明cardBox作为私有的ArrayList&PokerCard>来解决这个问题. cardBox;在扑克之星里面,但是这导致了我的程序的隐藏.

那么真的,问题是关于ArrayList之间的转换? Java告诉我我不能,所以有什么想法可以怎么办?

ž.

解决方法

如果我正确理解你,你应该声明:
public class ZoneList<T extends Card> {
   protected List<T> cardBox;
}

public class PokerHand extends ZoneList<PokerCard> {
   public PokerHand() {
      cardBox = new ArrayList<PokerCard>();
   }
}

猜你在找的Java相关文章