Un arreglo tiene una desventaja notable: necesitas saber cuántos elementos serán necesarios en el arreglo al crearlo y, después, te quedas atado a esa decisión. Al igual que un StringBuilder, un ArrayList puede ajustar su capacidad en tiempo de ejecución según sea necesario. Como un arreglo, un ArrayList es una