将列表的值分配给另一个列表

时间:2020-05-20 10:34:11

标签: c# list

我有一个从xml文件获取值的列表。该列表包含从0到6的值,并且值重复。 现在,我需要为列表分配不同的名称,如下所示:

0 =星期日, 1 =星期一, 。 。 。 6 =星期六

最终名单必须用星期天,星期一等更新。

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:1)

您可以尝试使用 Linq :在当前情况下,您可以将0..6范围内的每个数字投射DayOfWeek中,然后通过{ {1}}:

.ToString()

结果

  List<int> source = new List<int>() { 0, 3, 1, 5 };

  List<string> result = source
    .Select(item => ((DayOfWeek)item).ToString())
    .ToList(); 

  Console.Write(string.Join(", ", result));

一般案例中,使用映射:

  Sunday, Wednesday, Monday, Friday

最后,如果要添加到现有 Dictionary<int, string> map = new Dictionary<int, string>() { {0, "sunday"}, {1, "monday"}, {2, "tuesday"}, {3, "wednesday"}, {4, "thursday"} {5, "friday"}, {6, "saturday"}, }; ... List<string> result = source .Select(item => map[item]) .ToList(); 中,请放List<T>并放下AddRange

ToList()