Иллюстрированный самоучитель по Architecture .NET

Интерфейсы коллекций

static void ShowList(ArrayList *pArray) // статическая функция
{
lEnumerator *pEnum =
pArray › GetEnumerator();
while (pEnum › MoveNext())
{
String *pStr =
dynamic_cast<String *>(pEnum › Current);
Console::WriteLine(pStr};
}
}
static void ShowArray(ArrayList *pArray) // статическая функция
{
for (int i = 0; i < pArray › Count; i++) f
Console::WriteLine(
"pArray › get_Item({0}) = {!}", _box (i),
pArray › get_Item(i)); } }
static void ShowCount() // статическая функция
{
Console::WriteLine(
"pList › Count = {0}", _box(pList › Count));
Console::WriteLine(
"pList › Capacity = {0}", _box(pList › Capacity));
// Вместимость
}
static void AddString (String *pStr) // статическая функция
{
if (pList › Contains(pStr)) // если содержит throw new Exception!
// новое Исключение
String::Format("list contains {0}", pStr)); // Формат: список содержит
pList › Add(pStr); // Добавить
}
static void RemoveString(String *pStr) // статическая функция
{
if (pList › Contains(pStr)) // если содержит
pList › Remove(pStr); // Удалить else
Console::WriteLine(
"List does not contain {0}", pStr); // Список
//не содержит
}
static void RemoveAt(int nlndex) // статическая функция
{
try // попытка
{
pList › RemoveAt(nlndex);
}
catch (ArgumentOutOfRangeException *)
{
Console::WriteLine(
"No element at index {0}", _box(nlndex));
// Нет элемента с таким индексом
}
}
};

Результат работы программы будет таким:

pList › Count = 0
pList › Capacity = 4 // Вместимость
Amy // Эми
Bob // Боб
Charlie // Чарли
pList › Count = 3
pList › Capacity =4 // Вместимость
Amy // Эми
Bob // Боб
Charlie // Чарли
David // Дэвид
Ellen // Эллен
pList › Count = 5
pList › Capacity =8 // Вместимость
pArray › get_Item(0) = Bob // Боб
pArray › get_Item(1) = Charlie // Чарли
pArray › get_Item(2) = Ellen // Эллен
pList › Count = 3
pList › Capacity =8 // Вместимость
List does not contain Amy // Список не содержит Эми
No element at index 3 // Нет элемента с индексом 3
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.