Конец 7ой лабы2

This commit is contained in:
Kirill 2023-12-26 21:33:04 +04:00
parent fec308c18b
commit 55bb9dd042
2 changed files with 12 additions and 11 deletions

View File

@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ProjectTractor.Exceptions;
namespace ProjectTractor.Generics
{
@ -38,7 +39,7 @@ namespace ProjectTractor.Generics
public bool Insert(T tractor)
{
if (_places.Count == _maxCount)
return false;
throw new StorageOverflowException(_maxCount);
Insert(tractor, 0);
return true;
}
@ -48,24 +49,24 @@ namespace ProjectTractor.Generics
/// <param name="tractor">Добавляемый автомобиль</param>
/// <param name="position">Позиция</param>
/// <returns></returns>
public bool Insert(T tractor, int position)
public void Insert(T tractor, int position)
{
if (!(position >= 0 && position <= Count && _places.Count < _maxCount))
return false;
if (_places.Count == _maxCount)
throw new StorageOverflowException(_maxCount);
if (!(position >= 0 && position <= Count))
throw new Exception("Неверная позиция для вставки");
_places.Insert(position, tractor);
return true;
}
/// <summary>
/// Удаление объекта из набора с конкретной позиции
/// </summary>
/// <param name="position"></param>
/// <returns></returns>
public bool Remove(int position)
public void Remove(int position)
{
if (!(position >= 0 && position < Count))
return false;
throw new TractorNotFoundException(position);
_places.RemoveAt(position);
return true;
}
/// <summary>
/// Получение объекта из набора по позиции

View File

@ -139,12 +139,12 @@ namespace ProjectTractor
string[] strings = str.Split(new char[] { '\n', '\r' }, StringSplitOptions.RemoveEmptyEntries);
if (strings == null || strings.Length == 0)
{
throw new Exception("Нет данных для загрузки");
throw new IOException("Нет данных для загрузки");
}
if (!strings[0].StartsWith("TractorStorage"))
{
//если нет такой записи, то это не те данные
throw new Exception("Неверный формат данных");
throw new IOException("Неверный формат данных");
}
_tractorStorages.Clear();
do
@ -164,7 +164,7 @@ namespace ProjectTractor
{
if (!(collection + tractor))
{
throw new Exception("Ошибка добавления в коллекцию");
throw new ArgumentNullException("Ошибка добавления в коллекцию");
}
}
}