Comment mettre à jour la valeur d'une clé spécifique dans un dictionnaire Dictionary<string, int>
?
c#
dictionary
Amit
la source
la source
Réponses:
Pointez simplement le dictionnaire sur la clé donnée et attribuez une nouvelle valeur:
la source
C'est possible en accédant à la clé comme index
par exemple:
la source
++dictionary["test"];
oudictionary["test"]++;
mais seulement s'il y a une entrée dans le dictionnaire avec la valeur clé "test" - exemple:if(dictionary.ContainsKey("test")) ++dictionary["test"];
else dictionary["test"] = 1; // create entry with key "test"
Vous pouvez suivre cette approche:
L'avantage que vous obtenez ici est que vous vérifiez et obtenez la valeur de la clé correspondante en seulement 1 accès au dictionnaire. Si vous utilisez
ContainsKey
pour vérifier l'existence et mettre à jour la valeur à l'aide de,dic[key] = val + newValue;
vous accédez au dictionnaire deux fois.la source
dic.Add(key, newValue);
vous pouvez utiliser usedic[key] = newvalue;
.Utilisez LINQ: accès au dictionnaire pour la clé et modifiez la valeur
la source
Voici un moyen de mettre à jour par un index un peu comme
foo[x] = 9
oùx
est une clé et 9 est la valeurla source
mise à jour - modifie l'existant uniquement. Pour éviter les effets secondaires de l'utilisation de l'indexeur:
mettre à jour ou (ajouter un nouveau si la valeur n'existe pas dans le dic)
par exemple:
la source
Cela peut fonctionner pour vous:
Scénario 1: types primitifs
Scénario 2: l'approche que j'ai utilisée pour une liste en tant que valeur
J'espère que c'est utile pour quelqu'un qui a besoin d'aide.
la source