Utilizando ArrayLists se desea realizar una aplicación que permita gestionar una excursión en autobuses organizada por una asociación cultural. Para la excursión se contrata un número fijo de autobuses. Los autobuses se identifican mediante números consecutivos comenzando por O. Cada autobús tiene una capacidad máxima de 60 plazas. Los socios de la asociación que se apuntan a la excursión se identifican por su DNI, además para cada socio se registra su nombre. A la excursión se pueden apuntar los socios que lo deseen hasta completar la capacidad de los autobuses confratados. Al apuntarse a la excursión, los socios son asignados de forma automática al autobús que, en ese momento, tenga menos plazas ocupadas. Con posterioridad un socio puede solicitar el cambio de autobús.
public class ExcursionBuses { private static int MAXPLACES = 60; private static int NUMBUSES = 30; private static String[] names = {"Susana","Andres","Maria","Juan","Marcos","Nuno","Alberto", "Antonio","Ines","Toni","Luis","Gema","Rosa","Carlos","Ana","Pilar","Alfonso","Raul","Antonia", "Lourdes","Miguel","Cristina","Pedro","Daniel","Noelia","Sergio","Patricia","Javier","Lara", "Sara","Elena","Joao","Joana","Joaquin","Enrique","David","Isabel","Laura","Eduardo", "Julia","Cristina","Carmen","Rocio","Daniela","Silvia","Pablo","Vicente","Ignacio","Paula", "Juan Carlos","Alvaro","Andrea","Alicia","Alfredo","Julian","Mario","Marta","Francisco","Ign