将string[]转换为List>

本文关键字:string KeyValuePair int 转换 List | 更新日期: 2023-09-27 18:06:54

我有这个字符串[]:

string[] SkippedAreasArray = new string[] {"A", "B", "C", "D", "E", "F", "G",
            "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q"};

我想把它变成:

 List<KeyValuePair<int, string>>  SkippedAreasArray  = ???

我一直没有使用这个List<KeyValuePair<int, string>>数据结构。所以我有问题如何我的字符串数组看起来像如果我把它变成List<KeyValuePair<int, string>>(如何定义它?)。而且-我的逻辑在很大程度上依赖于索引,当我用简单的string[]工作时很容易采取。使用List<KeyValuePair<int, string>>的想法是,我可能需要使用像"A1", "B1", "B2"这样的值,我理解List<KeyValuePair<int, string>>是更好的数据结构,可以在我需要时轻松添加这些数据结构,但我能保持元素的正确索引吗?

将string[]转换为List<KeyValuePair<int, string>>

这是你要找的吗?

string[] SkippedAreasArray = new string[] {"A", "B", "C", "D", "E", "F", "G",
"H", "I", "J", "K", "L", "M", "N", "O", "P", "Q"};
Dictionary<int,string> dictionary =
                 SkippedAreasArray.Select((r, i) => new { value = r, index = i })
                 .ToDictionary(t => t.index, t => t.value);

,其中key为索引,value为字母表。

List<KeyValuePair<int, string>> list =
    SkippedAreasArray.Select((r, index) => new KeyValuePair<int,string>(index, r))
    .ToList()

,