У меня есть эта функция makeAirportManagers()
, которая должна возвращать ArrayList <MarkerManager>
все необходимые переменные map, countryMarkers
и airportMarkers
являются глобальными (грязный стиль обработки).
ArrayList makeAirportManagers(){
ArrayList managers = new ArrayList();
for (Marker country : countryMarkers){
MarkerManager currentMarkerManager = new MarkerManager();
for (Marker airport : airportMarkers){
Location airportLocation = airport.getLocation();
ScreenPosition airportScreenPos = map.getScreenPosition(airportLocation);
if(country.isInside(map, airportScreenPos.x, airportScreenPos.y)){
currentMarkerManager.addMarker(airport);
}
}
currentMarkerManager.disableDrawing();
managers.add(currentMarkerManager);
map.addMarkerManager(currentMarkerManager);
airportManagersBuild = true;
return managers;
}
}
Консоль выводит: Этот метод должен возвращать результат типа ArrayList.
И действительно не знаю почему!
В другой версии кода я подсчитываю элементы managers
, чтобы убедиться, что он не пустой, и он получает 178 элементов, как и ожидалось.
Я использую Processing 1.5.1 из-за библиотеки Unfolding, с которой я играю.