Случайные числа
Вот так можно получить случайное число от 0 (включительно), до 4 (т. е. не включая 5 - параметр в методе Next):
Random r = new Random();
int k = r.Next(5);
MessageBox.Show(k.ToString());
Если же нам надо получить случайное число в других пределах, то мы должны вызвать этот же метод Next,только уже с двумя параметрами - первый задает нижнюю границу желаемого случайного числа (включая), а второй - верхнюю (не включая). Так, например, следующий код будет давать случайное число от 1 до 2:
Random r = new Random();
int t = r.Next(1, 3);
Сортированный список SortedList
Сортированный список представляетсобой объединение массива и словаря. В него можно записывать элементы с ключами, как в словарь. А извлекатьможно как по ключу, так и по индексу.
Создание и наполнение списка
Для создания сортированного списка используются конструкторы:
SortedList myList = new SortedList();
Добавление элементов в список:
Для добавления элементов в словарь используется метод Add
Пример:
SortedList myList= new SortedList();
myList.Add("Petrov","8-923-225-25-25");
myList.Add("Sidorov", "8-913-931-39-31");
В данном примере мы создали сортированный список myList и добавили в него две пары элементов ключь-значение (Роль коюча выполняет фамилия, роль значения – номер телефона).
Извлечение данных из списка
Из сортированного списка данные можно извлекать двумя способами – по ключу(как у словаря) и по индексу (как у массива).
По ключу элементы извлекаются точно также как из словаря. Допустим нам нужно извлечь телефон Петрова:
System.Console.WriteLine(“Телефон Петрова: {0}”, myList[“Petrov”]);
Посмотрим, как извлечь элементы из сортированного списка SortedList по индексу:
for(int i=0; i<myList.Count; i++)
{
System.Console.WriteLine(“{0}. {1}: {2}”, i, myList.GetKey(i), myList.GetByIndex(i));
}
Здесь мы в цикле перебираем все элементы сортированного списка, причем переменная I играет роль индекса.
Для получения ключа элемента с заданным индексом используется метод GetKey.
Значение элемента с заданным индексом мы получаем при помощи метода GetByIndex.
Определение индекса по ключу и значению
В классе SortedList есть методы, позволяющие определить индекс элемента по ключу, для этого используется метод IndexOfKey и по значению при помощи метода IndexOfValue.
Пример:
myList.IndexOfKey(“Petrov”); - получим индекс записи с ключом “Petrov”
myList.IndexOfValue(“8-923-225-25-25”); - получим индекс записи с значением“8-923-225-25-25”
Изменение значения по индексу
Изменение значения элемента по индексу делается при помощи метода SetByIndex. Методу передаются два параметра – индекс изменяемого элемента и новое значение.
Пример:
myList.SetByIndex(1,”323456789”);
Обратите внимение что значение ключа в данной ситуации остается неизменным, меняется только само значение.
Удаление элементов списка
В классе SortedList определены 3 метода для удаления элементов из сортированного списка.
Clear - удаляет из списка все имеющиеся там элементы (myList.Clear(); - очистит список);
Remove – удаляет элемент с заданным ключом (myList.Remowe(“Petrov”); - удалит запись с ключом “Petrov”);
RemoveAt – удаляет элемент по индексу. (myList.RemoveAt(2); - удалит элемент с ингдексом равным 2);