我正在尝试TDD教程,并希望编写好的代码.我遇到了使用循环重复代码的问题.
我的代码看起来像这样:
public Board(int rows, int columns) {
this.rows = rows;
this.columns = columns;
blocks = new Block[rows][columns];
for (int row = 0; row < rows; row++) {
for (int col = 0; col < columns; col++) {
blocks[row][col] = new Block('.');
}
}
}
public boolean hasFalling(){
boolean falling = false;
for (int row = 0; row < rows; row++) {
for (int col = 0; col < columns; col++) {
if(blocks[row][col].getChar() == 'X'){
falling = true;
}
} …Run Code Online (Sandbox Code Playgroud) 我有以下代码:
import javax.inject.Inject;
import models.Subject;
import models.dao.SchoolDao;
import models.dao.SubjectDao;
import play.Application;
import play.GlobalSettings;
import play.db.jpa.JPA;
import play.db.jpa.Transactional;
import com.google.inject.AbstractModule;
import com.google.inject.Guice;
import com.google.inject.Injector;
public class Global extends GlobalSettings{
private Injector injector;
@Inject
private SubjectDao subjectDao;
@Override
public void onStart(Application application) {
injector = Guice.createInjector(new AbstractModule() {
@Override
protected void configure() {
bind(SchoolDao.class);
bind(SubjectDao.class);
}
});
insertInitialData();
}
@Override
public <A> A getControllerInstance(Class<A> aClass) throws Exception {
return injector.getInstance(aClass);
}
@Transactional
private void insertInitialData(){
if(subjectDao.countAll() == 0){
Subject deutsch = new …Run Code Online (Sandbox Code Playgroud)