Хорошо, после ваших разъяснений почти наверняка ошибка возникает из-за того, что автомобили слишком быстро выходят на дорогу и остаются в очереди carSource.
Когда автомобили находятся в этой очереди, к ним нельзя получить доступкак машины, даже если они существуют в автомобильной среде ... Это может быть странно, но это так.
Теперь, если вы хотите узнать скорость на определенной дороге, вы должны получить машины на этой дороге:
for (Car c : road.getCars(true)){//true means forward lane
vCar=c.getSpeed();
}
for (Car c : road.getCars(false)){//false means backwards lane
vCar=c.getSpeed();
}
Тем не менее, чтобы продолжить делать то, что ты делаешь, я давно снял видео на эту тему ... к сожалению, оно немного длинное (7 минут) и скучное (я тестировал)мои способности на YouTube), но это связано с вашей проблемой ... это хитрость, чтобы избежать проблем с этой очередью carSource: https://www.youtube.com/watch?v=EgYqraEibD4