Доброго времени. Последний пункт валидации (правильность работы метода getRightBorder()) проходит валидацию через раз - через два раза... Почему...? private double getLeftBorder(){ return ships.stream().min((o1, o2) -> (int) (o1.x-o2.x)).get().x; } private double getRightBorder(){ return ships.stream().max((o1, o2) -> (int) (o1.x-o2.x)).get().x+ShapeMatrix.ENEMY.length; }