如何更改字典中的值<int,float =“”>()?</int,>

时间:2014-10-17 05:51:27

标签: c#

我认为在这里展示我的代码更容易理解。

Dictionary<int, float> list = new Dictionary<int, float>();
list.add(0, 0f);

float fValue = 0f;
list.TryGetValue(0, out fValue);
fValue = 10f;

此代码不正确,因为float数据类型不是类。这是一个结构。

我想更改值“float”。

任何想法?

2 个答案:

答案 0 :(得分:3)

您可以使用其索引更改其值:

list[0] = 10f;

其中0Key10f是新Value

答案 1 :(得分:2)

一般情况中,您可以执行以下操作:

if (list.TryGetValue(0, out fValue)) 
  list[0] = 10f;    // <- key 0 exits
else
  list.Add(0, 10f); // <- no such key found

如果您不希望fValue对应0密钥,则可以将代码缩短为

if (list.ContainsKey(0)) 
  list[0] = 10f;    // <- when key 0 exits
else
  list.Add(0, 10f); // <- no such key found