Лабораторная работа №7 2
This commit is contained in:
parent
2218bac580
commit
af6b779070
@ -37,21 +37,17 @@ public class ListGenericObjects<T> : ICollectionGenericObjects<T>
|
|||||||
}
|
}
|
||||||
public T? Get(int position)
|
public T? Get(int position)
|
||||||
{
|
{
|
||||||
//TODO выброс ошибки если выход за границу
|
|
||||||
if (position >= Count || position < 0) throw new PositionOutOfCollectionException(position);
|
if (position >= Count || position < 0) throw new PositionOutOfCollectionException(position);
|
||||||
return _collection[position];
|
return _collection[position];
|
||||||
}
|
}
|
||||||
public int Insert(T obj)
|
public int Insert(T obj)
|
||||||
{
|
{
|
||||||
// TODO выброс ошибки если переполнение
|
|
||||||
if (Count == _maxCount) throw new CollectionOverflowException(Count);
|
if (Count == _maxCount) throw new CollectionOverflowException(Count);
|
||||||
_collection.Add(obj);
|
_collection.Add(obj);
|
||||||
return Count;
|
return Count;
|
||||||
}
|
}
|
||||||
public int Insert(T obj, int position)
|
public int Insert(T obj, int position)
|
||||||
{
|
{
|
||||||
// TODO выброс ошибки если переполнение
|
|
||||||
// TODO выброс ошибки если за границу
|
|
||||||
if (Count == _maxCount) throw new CollectionOverflowException(Count);
|
if (Count == _maxCount) throw new CollectionOverflowException(Count);
|
||||||
if (position >= Count || position < 0) throw new PositionOutOfCollectionException(position);
|
if (position >= Count || position < 0) throw new PositionOutOfCollectionException(position);
|
||||||
_collection.Insert(position, obj);
|
_collection.Insert(position, obj);
|
||||||
@ -59,7 +55,6 @@ public class ListGenericObjects<T> : ICollectionGenericObjects<T>
|
|||||||
}
|
}
|
||||||
public T Remove(int position)
|
public T Remove(int position)
|
||||||
{
|
{
|
||||||
// TODO если выброс за границу
|
|
||||||
if (position >= Count || position < 0) throw new PositionOutOfCollectionException(position);
|
if (position >= Count || position < 0) throw new PositionOutOfCollectionException(position);
|
||||||
T obj = _collection[position];
|
T obj = _collection[position];
|
||||||
_collection.RemoveAt(position);
|
_collection.RemoveAt(position);
|
||||||
|
@ -41,15 +41,12 @@ public class MassiveGenericObjects<T> : ICollectionGenericObjects<T>
|
|||||||
}
|
}
|
||||||
public T Get(int position)
|
public T Get(int position)
|
||||||
{
|
{
|
||||||
// TODO выброс ошибки если выход за границу
|
|
||||||
// TODO выброс ошибки если объект пустой
|
|
||||||
if (position >= _collection.Length || position < 0) throw new PositionOutOfCollectionException(position);
|
if (position >= _collection.Length || position < 0) throw new PositionOutOfCollectionException(position);
|
||||||
if (_collection[position] == null) throw new ObjectNotFoundException(position);
|
if (_collection[position] == null) throw new ObjectNotFoundException(position);
|
||||||
return _collection[position];
|
return _collection[position];
|
||||||
}
|
}
|
||||||
public int Insert(T obj)
|
public int Insert(T obj)
|
||||||
{
|
{
|
||||||
// TODO выброс ошибки если переполнение
|
|
||||||
int index = 0;
|
int index = 0;
|
||||||
while (index < _collection.Length)
|
while (index < _collection.Length)
|
||||||
{
|
{
|
||||||
@ -64,8 +61,6 @@ public class MassiveGenericObjects<T> : ICollectionGenericObjects<T>
|
|||||||
}
|
}
|
||||||
public int Insert(T obj, int position)
|
public int Insert(T obj, int position)
|
||||||
{
|
{
|
||||||
// TODO выброс ошибки если переполнение
|
|
||||||
// TODO выброс ошибки если выход за границу
|
|
||||||
if (position >= _collection.Length || position < 0) throw new PositionOutOfCollectionException(position);
|
if (position >= _collection.Length || position < 0) throw new PositionOutOfCollectionException(position);
|
||||||
if (_collection[position] == null) {
|
if (_collection[position] == null) {
|
||||||
_collection[position] = obj;
|
_collection[position] = obj;
|
||||||
@ -95,8 +90,6 @@ public class MassiveGenericObjects<T> : ICollectionGenericObjects<T>
|
|||||||
}
|
}
|
||||||
public T Remove(int position)
|
public T Remove(int position)
|
||||||
{
|
{
|
||||||
// TODO выброс ошибки если выход за границу
|
|
||||||
// TODO выброс ошибки если объект пустой
|
|
||||||
if (position >= _collection.Length || position < 0) throw new PositionOutOfCollectionException(position);
|
if (position >= _collection.Length || position < 0) throw new PositionOutOfCollectionException(position);
|
||||||
if (_collection[position] == null) throw new ObjectNotFoundException(position);
|
if (_collection[position] == null) throw new ObjectNotFoundException(position);
|
||||||
T obj = _collection[position];
|
T obj = _collection[position];
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
using ProjectWarmlyShip.Drawnings;
|
using ProjectWarmlyShip.Drawnings;
|
||||||
using ProjectWarmlyShip.Exceptions;
|
using ProjectWarmlyShip.Exceptions;
|
||||||
using System.Text;
|
|
||||||
using static System.Runtime.InteropServices.JavaScript.JSType;
|
|
||||||
|
|
||||||
namespace ProjectWarmlyShip.CollectionGenericObjects;
|
namespace ProjectWarmlyShip.CollectionGenericObjects;
|
||||||
|
|
||||||
@ -30,8 +28,6 @@ public class StorageCollection<T>
|
|||||||
/// <param name="collectionType">тип коллекции</param>
|
/// <param name="collectionType">тип коллекции</param>
|
||||||
public void AddCollection(string name, CollectionType collectionType)
|
public void AddCollection(string name, CollectionType collectionType)
|
||||||
{
|
{
|
||||||
// TODO проверка, что name не пустой и нет в словаре записи с таким ключом
|
|
||||||
// TODO Прописать логику для добавления
|
|
||||||
if (_storages.ContainsKey(name)) return;
|
if (_storages.ContainsKey(name)) return;
|
||||||
if (collectionType == CollectionType.None) return;
|
if (collectionType == CollectionType.None) return;
|
||||||
else if (collectionType == CollectionType.Massive)
|
else if (collectionType == CollectionType.Massive)
|
||||||
@ -45,8 +41,6 @@ public class StorageCollection<T>
|
|||||||
/// <param name="name">Название коллекции</param>
|
/// <param name="name">Название коллекции</param>
|
||||||
public void DelCollection(string name)
|
public void DelCollection(string name)
|
||||||
{
|
{
|
||||||
|
|
||||||
// TODO Прописать логику для удаления коллекции
|
|
||||||
if (_storages.ContainsKey(name))
|
if (_storages.ContainsKey(name))
|
||||||
_storages.Remove(name);
|
_storages.Remove(name);
|
||||||
}
|
}
|
||||||
@ -59,7 +53,6 @@ public class StorageCollection<T>
|
|||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
// TODO Продумать логику получения объекта
|
|
||||||
if (_storages.ContainsKey(name))
|
if (_storages.ContainsKey(name))
|
||||||
return _storages[name];
|
return _storages[name];
|
||||||
return null;
|
return null;
|
||||||
@ -97,7 +90,6 @@ public class StorageCollection<T>
|
|||||||
foreach (KeyValuePair<string, ICollectionGenericObjects<T>> value in _storages)
|
foreach (KeyValuePair<string, ICollectionGenericObjects<T>> value in _storages)
|
||||||
{
|
{
|
||||||
writer.Write(Environment.NewLine);
|
writer.Write(Environment.NewLine);
|
||||||
// не сохраняем пустые коллекции
|
|
||||||
if (value.Value.Count == 0)
|
if (value.Value.Count == 0)
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
|
@ -24,7 +24,6 @@ public partial class FormShipCollection : Form
|
|||||||
private void buttonAddShip_Click(object sender, EventArgs e)
|
private void buttonAddShip_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
FormShipConfig form = new();
|
FormShipConfig form = new();
|
||||||
// TODO передать метод
|
|
||||||
form.Show();
|
form.Show();
|
||||||
form.AddEvent(SetShip);
|
form.AddEvent(SetShip);
|
||||||
}
|
}
|
||||||
@ -156,10 +155,6 @@ public partial class FormShipCollection : Form
|
|||||||
}
|
}
|
||||||
private void buttonCollectionDel_Click(object sender, EventArgs e)
|
private void buttonCollectionDel_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
// TODO прописать логику удаления элемента из коллекции
|
|
||||||
// нужно убедиться, что есть выбранная коллекция
|
|
||||||
// спросить у пользователя через MessageBox, что он подтверждает, что хочет удалить запись
|
|
||||||
// удалить и обновить ListBox
|
|
||||||
if (listBoxCollection.SelectedIndex < 0 || listBoxCollection.SelectedItem == null)
|
if (listBoxCollection.SelectedIndex < 0 || listBoxCollection.SelectedItem == null)
|
||||||
{
|
{
|
||||||
MessageBox.Show("Коллекция не выбрана");
|
MessageBox.Show("Коллекция не выбрана");
|
||||||
|
@ -25,15 +25,6 @@ namespace ProjectWarmlyShip
|
|||||||
}
|
}
|
||||||
private static void ConfigureServices(ServiceCollection services)
|
private static void ConfigureServices(ServiceCollection services)
|
||||||
{
|
{
|
||||||
//services.AddSingleton<FormShipCollection>()
|
|
||||||
// .AddLogging(option =>
|
|
||||||
// {
|
|
||||||
// option.SetMinimumLevel(LogLevel.Information);
|
|
||||||
// option.AddSerilog(new LoggerConfiguration()
|
|
||||||
// .WriteTo.File("log.txt")
|
|
||||||
// .CreateLogger());
|
|
||||||
// });
|
|
||||||
|
|
||||||
string[] path = Directory.GetCurrentDirectory().Split('\\');
|
string[] path = Directory.GetCurrentDirectory().Split('\\');
|
||||||
string pathNeed = "";
|
string pathNeed = "";
|
||||||
for (int i = 0; i < path.Length - 3; i++)
|
for (int i = 0; i < path.Length - 3; i++)
|
||||||
|
Loading…
Reference in New Issue
Block a user