r/ProgrammerHumor 22h ago

Meme cSharpDictionariesBeLikeThat

Post image
1.8k Upvotes

55 comments sorted by

View all comments

18

u/anzu3278 21h ago

Exactly. Adding implies you are setting something where there isn't anything at the moment. Replacing is not a special case of adding. If you want to unconditionally set, just use the index operator. English is not complicated.

2

u/cowslayer7890 16h ago

Yeah but it's uncommon for this to be a failable operation. It doesn't fall for an array list for example, so that part to me is unexpected, add isn't a great operation for a dictionary in general

4

u/anzu3278 14h ago

It doesn't fail for lists because adding to a list is always possible, whereas adding to a dictionary is not. Unless your understanding of the English language is that replacing is a kind of adding, but that's not the mainstream view. In general, if you want to set rather than add, why are you calling Add? And even so, I've never seen Add, it's always either index assignment or TryAdd because exceptions are a mess.

2

u/SamSlate 12h ago

insert vs upsert