package ProjectStormtrooper; import java.util.ArrayList; import java.util.List; public class SetGeneric { private final ArrayList _places; public int Count() { return _places.size(); } private final int _maxCount; public SetGeneric(int count) { _maxCount = count; _places = new ArrayList<>(count); } public int Insert(T plane) { return Insert(plane, 0); } public int Insert(T plane, int position) { // Проверка позиции if (position < 0 || position >= _maxCount) { return -1; } // Вставка по позиции _places.add(position, plane); return position; } public T Remove(int position) { // Проверка позиции if (position < 0 || position >= Count()) { return null; } // Удаление объекта из массива, присвоив элементу массива значение null T plane = _places.get(position); _places.set(position, null); return plane; } public T Get(int position) { // Проверка позиции if (position < 0 || position >= Count()) { return null; } return _places.get(position); } public void Set(int position, T plane) { // Проверка позиции // Проверка свободных мест в списке if (position < 0 || position >= _maxCount || Count() == _maxCount) { return; } // Вставка в список по позиции _places.set(position, plane); } public ArrayList GetEnumerator() { return _places; } }