首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在GridWorld中变形Critter?

在GridWorld中变形Critter?
EN

Stack Overflow用户
提问于 2012-04-12 04:47:47
回答 1查看 448关注 0票数 0

对于这个名为AntCritter的新生物,我重写了processActors方法,现在它删除了周围的其他生物,而它应该改变它们的颜色。我已经尝试了一大堆东西,但我不能理解,因为在代码中,它直接告诉我们,如果它是一种抗菌素,就不要删除它。move方法与bug的方法基本相同。

代码语言:javascript
复制
public void processActors(ArrayList<Actor> actors)
{
    for(Actor a: actors)
    {
        if(!(a instanceof AntCritter)||!(a instanceof Flower)||!(a instanceof KingCrab))
            a.removeSelfFromGrid();
        if(a instanceof AntCritter)
        {
            setColor(Color.BLUE);
            a.setColor(Color.PINK);
            ((AntCritter) a).move();
        }
    }
}
EN

回答 1

Stack Overflow用户

发布于 2012-04-12 04:59:28

我对GridWorld一点也不熟悉,但这是第一个条件:

代码语言:javascript
复制
!(a instanceof Flower)

aAntCritter时将为true。因此,if语句中的其余条件将永远不会被求值。

有关short-circuit评估的更多信息,请阅读。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10113716

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档