如何检查数组的所有成员

Caf*_*ode 0 java arrays

我正在编写一个使用Entitys 数组的基于文本的生存模拟器.的Entity类包含关于每个实体的数据,诸如能量,水合,并士气.我开始结束项目,但我遇到了问题.为了编写checkStatus()方法,我需要有一个if语句来检查所有实体上的Entity [].isAlive,即使我不知道数组有多长.简而言之,我如何使用if语句来检查数组的所有成员的值?我知道我可能不得不使用一个for循环迭代检查成员,用array.getLength.到目前为止,我只能检查单个类中的变量.我见过类似的问题,但他们并没有得到我想要的东西.

PS我使用的是基本的Java,没有框架或库.

伪代码,演示了我正在寻找的东西

if Entity[ALL-MEMBERS].isAlive {
    gameOver = true;
}
Run Code Online (Sandbox Code Playgroud)

Tod*_*odd 6

Java 6,7和8:

public boolean areAllAlive(Entity[] entities) {
    if(entities == null || entities.length == 0) {
        return false; //?
    }
    for(Entity e : entities) {
       if(!e.isAlive()) {
          return false;
       }
    } 
    return true;
}
Run Code Online (Sandbox Code Playgroud)

Java 8,使用流/函数:

public boolean areAllAlive(Entity[] entities) {
    if(entities == null || entities.length == 0) {
        return false; //?
    }
    return Arrays.stream(entities).allMatch(e -> e.isAlive());
}
Run Code Online (Sandbox Code Playgroud)