PIbd-22_Chernyshev_G.J._29_.../Trolleybus/SetGeneric.java
2023-12-01 19:42:28 +03:00

65 lines
1.6 KiB
Java

package Trolleybus;
import java.util.List;
import java.util.ArrayList;
public class SetGeneric <T extends Object>{
private final List<T> _places;
public int Count;
private final int _maxCount;
public SetGeneric(int count){
_places = new ArrayList<>();
_maxCount = count;
Count = 0;
}
//Вставка в начало
public int Insert(T bus){
return Insert(bus, 0);
}
//Вставка на какую-то позицию
public int Insert(T bus, int position)
{
if (position >= _maxCount || position < 0)
{
//позиция неверная, значит вставить нельзя
return -1;
}
if (Count + 1 <= _maxCount) {
_places.add(position, bus);
Count++;
return position;
}
// Места нет
return -1;
}
public boolean Remove(int position)
{
if (position >= Count || position < 0)
{
return false;
}
_places.remove(position);
Count--;
return true;
}
public T Get(int position)
{
if (position >= Count || position < 0)
{
return null;
}
return (T)_places.get(position);
}
public ArrayList<T> GetBuses(int maxBus){
ArrayList<T> toReturn = new ArrayList<>();
for (int i = 0; i < _maxCount; i++) {
toReturn.add(_places.get(i));
if (i == maxBus) {
return toReturn;
}
}
return toReturn;
}
}