Переделаны методы, готовая лаба
This commit is contained in:
parent
9a7af194fe
commit
2d38dcf373
@ -67,7 +67,7 @@ namespace Airbus
|
||||
if (form.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
DrawningObjectPlane plane = new(form.SelectedPlane);
|
||||
if (_mapPlanesCollectionGeneric + plane != -1)
|
||||
if (_mapPlanesCollectionGeneric + plane)
|
||||
{
|
||||
MessageBox.Show("Объект добавлен");
|
||||
pictureBox.Image = _mapPlanesCollectionGeneric.ShowSet();
|
||||
@ -94,7 +94,7 @@ namespace Airbus
|
||||
return;
|
||||
}
|
||||
int pos = Convert.ToInt32(maskedTextBoxPosition.Text);
|
||||
if (_mapPlanesCollectionGeneric - pos != -1)
|
||||
if (_mapPlanesCollectionGeneric - pos)
|
||||
{
|
||||
MessageBox.Show("Объект удален");
|
||||
pictureBox.Image = _mapPlanesCollectionGeneric.ShowSet();
|
||||
|
@ -55,7 +55,7 @@ namespace Airbus
|
||||
/// <param name="map"></param>
|
||||
/// <param name="planes"></param>
|
||||
/// <returns></returns>
|
||||
public static int operator +(MapWithSetPlanesGeneric<T, U> map, T planes)
|
||||
public static bool operator +(MapWithSetPlanesGeneric<T, U> map, T planes)
|
||||
{
|
||||
return map._setPlanes.Insert(planes);
|
||||
}
|
||||
@ -65,7 +65,7 @@ namespace Airbus
|
||||
/// <param name="map"></param>
|
||||
/// <param name="position"></param>
|
||||
/// <returns></returns>
|
||||
public static int operator -(MapWithSetPlanesGeneric<T, U> map, int position)
|
||||
public static bool operator -(MapWithSetPlanesGeneric<T, U> map, int position)
|
||||
{
|
||||
return map._setPlanes.Remove(position);
|
||||
}
|
||||
|
@ -30,7 +30,7 @@ namespace Airbus
|
||||
/// </summary>
|
||||
/// <param name="car">Добавляемый самолёт</param>
|
||||
/// <returns></returns>
|
||||
public int Insert(T plane)
|
||||
public bool Insert(T plane)
|
||||
{
|
||||
// TODO вставка в начало набора
|
||||
return Insert(plane, 0);
|
||||
@ -42,7 +42,7 @@ namespace Airbus
|
||||
/// <param name="plane">Добавляемый самолёт</param>
|
||||
/// <param name="position">Позиция</param>
|
||||
/// <returns></returns>
|
||||
public int Insert(T plane, int position)
|
||||
public bool Insert(T plane, int position)
|
||||
{
|
||||
// TODO проверка позиции
|
||||
// TODO проверка, что элемент массива по этой позиции пустой, если нет, то
|
||||
@ -53,45 +53,50 @@ namespace Airbus
|
||||
if(_places[position] == null)
|
||||
{
|
||||
_places[position] = plane;
|
||||
return position;
|
||||
}
|
||||
else
|
||||
{
|
||||
int pos = -1;
|
||||
bool isFree = false;
|
||||
for (int i = 0; i < Count; i++)
|
||||
{
|
||||
if (_places[i] == null)
|
||||
{
|
||||
isFree = true;
|
||||
pos = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (isFree)
|
||||
{
|
||||
for (var i = _places.Length - 1; i != 0; --i) _places[i] = _places[i - 1];
|
||||
for (var i = pos; i > position; --i) _places[i] = _places[i - 1];
|
||||
_places[position] = plane;
|
||||
}
|
||||
else
|
||||
{
|
||||
return -1;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
return true;
|
||||
}
|
||||
/// <summary>
|
||||
/// Удаление объекта из набора с конкретной позиции
|
||||
/// </summary>
|
||||
/// <param name="position"></param>
|
||||
/// <returns></returns>
|
||||
public int Remove(int position)
|
||||
public bool Remove(int position)
|
||||
{
|
||||
// TODO проверка позиции
|
||||
// TODO удаление объекта из массива, присовив элементу массива значение null
|
||||
if(position < 0 || position >= Count || _places[position] == null)
|
||||
if (position < 0 || position >= Count || _places[position] == null)
|
||||
{
|
||||
return -1;
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
_places[position] = null;
|
||||
return true;
|
||||
}
|
||||
_places[position] = null;
|
||||
return 0;
|
||||
}
|
||||
/// <summary>
|
||||
/// Получение объекта из набора по позиции
|
||||
|
Loading…
Reference in New Issue
Block a user