package de.edu.hsfulda.ciip.tdd; import java.util.List; public class StateAlive implements State { @Override public State nextBy(List neigborStates) { long alifeNeigbors = countAliveNeighbors(neigborStates); if(alifeNeigbors >1) { return this; } else { return new StateDead(); } } private long countAliveNeighbors(List neigborStates) { return neigborStates.stream().filter(state -> this == state).count(); } }