Измененен тип возвращаемого значения

This commit is contained in:
Данияр Аглиуллов 2022-10-13 14:57:11 +04:00
parent 3a5fa25ce4
commit ca0967fdce
2 changed files with 16 additions and 15 deletions

View File

@ -54,8 +54,8 @@ namespace AirBomber
/// </summary> /// </summary>
/// <param name="map"></param> /// <param name="map"></param>
/// <param name="airplane"></param> /// <param name="airplane"></param>
/// <returns></returns> /// <returns>Возвращает позицию вставленого объекта либо -1, если не получилось его добавить</returns>
public static bool operator +(MapWithSetAirplanesGeneric<T, U> map, T airplane) public static int operator +(MapWithSetAirplanesGeneric<T, U> map, T airplane)
{ {
return map._setAirplanes.Insert(airplane); return map._setAirplanes.Insert(airplane);
} }
@ -64,8 +64,8 @@ namespace AirBomber
/// </summary> /// </summary>
/// <param name="map"></param> /// <param name="map"></param>
/// <param name="position"></param> /// <param name="position"></param>
/// <returns></returns> /// <returns>Возвращает удаленный объект, либо null если его не удалось удалить</returns>
public static bool operator -(MapWithSetAirplanesGeneric<T, U> map, int position) public static T operator -(MapWithSetAirplanesGeneric<T, U> map, int position)
{ {
return map._setAirplanes.Remove(position); return map._setAirplanes.Remove(position);
} }

View File

@ -33,8 +33,8 @@ namespace AirBomber
/// Добавление объекта в набор /// Добавление объекта в набор
/// </summary> /// </summary>
/// <param name="airplane">Добавляемый самолет</param> /// <param name="airplane">Добавляемый самолет</param>
/// <returns></returns> /// <returns>Возвращает позицию вставленого объекта либо -1, если не получилось его добавить</returns>
public bool Insert(T airplane) public int Insert(T airplane)
{ {
return Insert(airplane, 0); return Insert(airplane, 0);
} }
@ -48,8 +48,8 @@ namespace AirBomber
/// </summary> /// </summary>
/// <param name="airplane">Добавляемый самолет</param> /// <param name="airplane">Добавляемый самолет</param>
/// <param name="position">Позиция</param> /// <param name="position">Позиция</param>
/// <returns></returns> /// <returns>Возвращает позицию вставленого объекта либо -1, если не получилось его добавить</returns>
public bool Insert(T airplane, int position) public int Insert(T airplane, int position)
{ {
int positionNullElement = position; int positionNullElement = position;
while (Get(positionNullElement) != null) while (Get(positionNullElement) != null)
@ -57,9 +57,9 @@ namespace AirBomber
positionNullElement++; positionNullElement++;
} }
// Если изначальная позиция была некорректной или пустых элементов справа не оказалось возвращаем false // Если изначальная позиция была некорректной или пустых элементов справа не оказалось возвращаем false
if (!isCorrectPosition(positionNullElement)) if (!isCorrectPosition(positionNullElement))
{ {
return false; return -1;
} }
while (positionNullElement != position) // Смещение вправо while (positionNullElement != position) // Смещение вправо
{ {
@ -67,19 +67,20 @@ namespace AirBomber
positionNullElement--; positionNullElement--;
} }
_places[position] = airplane; _places[position] = airplane;
return true; return position;
} }
/// <summary> /// <summary>
/// Удаление объекта из набора с конкретной позиции /// Удаление объекта из набора с конкретной позиции
/// </summary> /// </summary>
/// <param name="position"></param> /// <param name="position"></param>
/// <returns></returns> /// <returns>Возвращает удаленный объект, либо null если его не удалось удалить</returns>
public bool Remove(int position) public T Remove(int position)
{ {
if (!isCorrectPosition(position)) if (!isCorrectPosition(position))
return false; return null;
var result = _places[position];
_places[position] = null; _places[position] = null;
return true; return result;
} }
/// <summary> /// <summary>
/// Получение объекта из набора по позиции /// Получение объекта из набора по позиции