0

我需要知道是否有任何方法可以在不创建循环的情况下更改字典的所有键

例如,如果我有一本字典:

Dictionary <DateTime, bool> dates

我在每个键中减少一天。

4

3 回答 3

3

您可以使用 LINQ 扩展:

Dictionary<DateTime, bool> dates = new Dictionary<DateTime, bool>()
{
    {
        DateTime.Now, true
    }
};

var modifiedDic = dates.ToDictionary(z => z.Key.AddDays(-1), z => z.Value);
于 2013-04-03T12:13:13.650 回答
1

您可以使用 LINQ 进行修改,然后再转换回 Ditionary

var newDates = dates.ToDictionary(dic => dic.Key.AddDays(-1), dic => dic.value);
于 2013-04-03T12:14:51.383 回答
1

你可以使用 linq:

dates = dates.ToDictionary(i => i.Key.AddDays(-1), i => i.Value);

祝你的任务好运。

于 2013-04-03T12:15:08.283 回答