Помогите советом, вроде проверяю же:
private boolean compressTiles(Tile[] tiles){
        Tile[] tempTiles = tiles.clone();//клонирую входящий tiles до изменений
        for(int i = tiles.length-1 ; i > 0 ; i--){
            for(int j = 0 ; j < i ; j++){
                if( tiles[j].value== 0 ) {
                    int tmp = tiles[j].value;
                    tiles[j].value = tiles[j+1].value;
                    tiles[j+1].value = tmp;
                }
            }
        }
        //сверяю клонировааный и tiles после изменений
        for (int i = 0; i < tempTiles.length; i++) {
            if (tempTiles[i].value != tiles[i].value) return true;
        }
        return false;
    }
почему не проходит? что я не учел?