Cześć!
Ostatnio piszę swoją wersję "gry w życie" Conway'a w Javie, wszystko jak na razie działa... ALE.
Mam pewien dysonans patrząc na mój kod, niby jest dobry.. wykonuje swoje zadanie, ale mam wrażenie że można go lepiej napisać. Przeszkadzają mi moje pętle for, czy ktoś ma pomysł jak mogę je w miarę czytelny sposób zamienić?
package pl.jampdev;
import java.util.Random;
public class Board {
private TwoDimentionalArrayList<Field> listOfFields;
private int columns;
private int rows;
public Board(int columns, int rows){
this.listOfFields = new TwoDimentionalArrayList<>();
this.columns = columns;
this.rows = rows;
for (int columnsIndex = 0; columnsIndex < columns; columnsIndex++) {
for (int rowsIndex = 0; rowsIndex < rows; rowsIndex++) {
listOfFields.addToArray(columnsIndex,rowsIndex,new Field());
}
}
}
public void fillRandomBoard(){
Random generator = new Random();
for (int columnIndex = 0; columnIndex < columns; columnIndex++) {
for (int rowIndex = 0; rowIndex < rows; rowIndex++) {
listOfFields.getFromArray(columnIndex, rowIndex).setState(generator.nextBoolean());
}
}
}
public void showBoard(){
for (int columnIndex = 0; columnIndex < columns; columnIndex++) {
for (int rowIndex = 0; rowIndex < rows; rowIndex++) {
if(listOfFields.getFromArray(columnIndex,rowIndex).getState() == true){
System.out.print("[@]");
}
else {
System.out.print("[#]");
}
}
System.out.println();
}
}
}