Gần đây tôi mới nhận thấy Dictionary.TryGetValue(TKey key, out TValue value)
và tò mò về cách tiếp cận tốt hơn để truy xuất một giá trị từ Từ điển.
Theo truyền thống, tôi đã làm:
if (myDict.Contains(someKey))
someVal = myDict[someKey];
...
trừ khi tôi biết nó có được trong đó.
Tốt hơn là chỉ cần làm:
if (myDict.TryGetValue(somekey, out someVal)
...
Cách thực hành nào tốt hơn? Cái này có nhanh hơn cái kia không? Tôi sẽ tưởng tượng rằng phiên bản Thử sẽ chậm hơn khi nó 'nuốt' một thử / bắt vào bên trong chính nó và sử dụng điều đó như logic, phải không?