У меня есть Java-программа, в которой хранится список игроков в крикет-клуб, использующих arraylist. В классе клуба у меня есть статическое поле, в котором отслеживается, сколько игроков зарегистрировано в клубе. Также я назначаю идентификатор игрока статическому полю, так что каждый раз, когда игрок добавляется, он получает идентификатор. Это какОбновление arraylist после удаления объектов
id = regPlayer++;
regPlayer является статическое поле, которое инициализируется как 1
Проблема у меня в том, что если я хочу, чтобы удалить игрока из ArrayList я не могу быть способный обновлять идентификаторы. Например, если у меня есть четыре игрока, они будут иметь следующие идентификаторы, прежде чем я удалить любого из них:
Player 1 ID = 1
Player 2 ID = 2
Player 3 ID = 3
Player 4 ID = 4
Если удалить игрок 2 Теперь я хочу, чтобы третий игрок, чтобы иметь ID 2 и четвертый игрок, чтобы иметь идентификатор 3, вот так:
Player 1 = 1
Player 3 = 2
Player 4 = 3
Есть ли способ достичь этого с помощью arraylists и как?
Если 'playerId' привязан к индексу игрока в массиве, вы можете просто использовать индекс элемента как' playerId'. –