В С# я пытаюсь получить элемент из списка со случайным индексом. Когда он был извлечен, я хочу, чтобы он был удален, чтобы он больше не мог быть выбран. Кажется, мне нужно много операций для этого, нет ли функции, в которой я могу просто извлечь элемент из списка? функция RemoveAt (index) недействительна. Я хотел бы получить значение с возвратом.
Что я делаю:
List<int> numLst = new List<int>();
numLst.Add(1);
numLst.Add(2);
do
{
int index = rand.Next(numLst.Count);
int extracted = numLst[index];
// do something with extracted value...
numLst.removeAt(index);
}
while(numLst.Count > 0);
Что я хотел бы сделать:
List<int> numLst = new List<int>();
numLst.Add(1);
numLst.Add(2);
do
{
int extracted = numLst.removeAndGetItem(rand.Next(numLst.Count));
// do something with this value...
}
while(numLst.Count > 0);
Существует ли такая функция removeAndGetItem?