Czy istnieje sposób usunięcia wpisu z numeru Dictionary
(przez Key
) ORAZ odzyskanie go w postaci "tego samego kroku?" Pod numerem Value
.Usuń ze słownika kluczem i pobierz wartość
Na przykład, dzwonię
Dictionary.Remove(Key);
ale chcę też zwrócić wartość w tym samym czasie. Funkcja zwraca tylko bool
.
wiem, że mogę zrobić coś takiego
Value = Dictionary[Key];
Dictionary.Remove(Key);
ale wydaje się, że to będzie przeszukać słownika dwa razy (raz, aby uzyskać wartość, a innym razem, aby usunąć go ze słownika). Jak mogę (jeśli to możliwe) wykonać oba BEZ dwukrotnego przeszukiwania słownika?
możliwy duplikat http://stackoverflow.com/questions/15785091/is-there-any-implementation-to-remove-by-key-and-get-the-value-at-the-same-time This wątek ma akceptowaną odpowiedź – Kenneth
Jeśli jest to związane z wydajnością, możesz rzucić okiem na odpowiedź tutaj: http://stackoverflow.com/questions/1869452/a-faster-replacement-to-tiction-tictionarytkey-tvalue i sprawdzić, czy to usuwa cokolwiek wyżej – Silvermind
@Kenneth upvote + dzięki za link. – Mash