Допустим, у меня есть ConcurrentDictionary
:
var dict = new ConcurrentDictionary<string, someObject>();
dict.TryAdd("0_someA_someB_someC", obj0);
dict.TryAdd("1_someA_someB_someC", obj1);
dict.TryAdd("2_someA_someB_someC", obj2);
dict.TryAdd("3_someA_someB_someC", obj3);
<number>_
в ключах увеличивается и, будучи словарем, не гарантирует, что элементы в порядке.
Теперь представьте, что я хотел удалить из словаря все элементы, у которых number
меньше 2
. Я понятия не имею, как будут выглядеть ключи, только то, что они будут иметь префикс с номером, как указано выше.
Как удалить из словаря все элементы, ключ которых начинается со значения, меньшего 2
?
Например, результирующий дикт после этого процесса будет выглядеть так:
dict.TryAdd("2_someA_someB_someC", obj2);
dict.TryAdd("3_someA_someB_someC", obj3);