gpt4 book ai didi

java - 在 Java 中,如何检查集合是否包含特定类的实例?

转载 作者:搜寻专家 更新时间:2023-10-30 21:02:58 26 4
gpt4 key购买 nike

例如(这非常简单),假设我为一副纸牌中的每张纸牌都有一个类...例如一个KingOfSpaces类,一个QueenOfSpades类,一个JackOfDiamonds类等。所有这些扩展Card . KingOfSpaces 可能有多个实例.

我有一个 ArrayList<Card> ,里面有 5 个对象。我如何检查是否 ArrayList至少包含一个 AceOfDiamonds

最佳答案

首先让我们指出,使用类来进行这种区分几乎肯定是一件坏事。我想说您可能需要使“Card”更智能一些(即具有 getSuit() 和 getOrdinal() 方法)。

但是,如果你坚持这样做,迭代数组列表(你可以用谷歌搜索 - 这是一个非常基本的事情)并使用 instanceof 运算符比较列表中的每个条目。

您将此问题标记为与“反射(reflection)”有关,这似乎不对。您确定不是要将其标记为“家庭作业”吗?

好的 - 到底是什么,这是代码:

List<Card> hand = ...;
for(Card card : hand){
if (card instanceof AceOfDiamonds) return true;
}

但是请不要那样设置你的类层次结构——这是糟糕的设计。

关于java - 在 Java 中,如何检查集合是否包含特定类的实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7734777/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com