Следующий ниже класс представляет собой построитель контекста, который помещает объекты Tree в географическое пространство на сетке. Я создал список массива дерев объектов с различными значениями пригодности и идентификаторами:Где я могу поместить функцию геттера?
public class TreeBuilder implements ContextBuilder<Object> {
@Override
public Context build(Context<Object> context) {
context.setId("taylor");
ContinuousSpaceFactory spaceFactory =
ContinuousSpaceFactoryFinder.createContinuousSpaceFactory(null);
ContinuousSpace<Object> space =
spaceFactory.createContinuousSpace("space", context,
new RandomCartesianAdder<Object>(),
new repast.simphony.space.continuous.WrapAroundBorders(),
50, 50);
GridFactory gridFactory = GridFactoryFinder.createGridFactory(null);
Grid<Object> grid = gridFactory.createGrid("grid", context,
new GridBuilderParameters<Object>(new WrapAroundBorders(),
new SimpleGridAdder<Object>(),
true, 50, 50));
ArrayList<Tree> trees = new ArrayList<Tree>();
int treeCount = 100;
for (int i = 1; i < treeCount; i++) {
double suitability = Math.random();
int id = i;
Tree tree = new Tree(space, grid, suitability, id);
context.add(tree);
trees.add(tree);
tree.measureSuit();
}
Tree maxTree = Collections.max(trees, new SuitComp());
System.out.println(maxTree);
for (Object obj : context) {
NdPoint pt = space.getLocation(obj);
grid.moveTo(obj, (int)pt.getX(), (int)pt.getY());
}
return context;
}
}
я считаю, что я могу использовать поглотитель, чтобы получить доступ к списку других классов. Что-то вроде этого ...
public ArrayList<Tree> getList() {
return trees;
}
Но мой вопрос: где я могу поставить код выше? Я получаю сообщение об ошибке, когда я его помещаю, в частности, с помощью «деревьев возврата».
Кроме того: Могу ли я использовать геттер, чтобы получить значение maxTree из списка?
Обычно 'getters' используются для ** class ** (не локальных) переменных. –