我想一個字典轉換爲字符串數組(或列表)
字符串陣列需要這樣被返回:「ID,PTS」,其中int是ID和長是PTS。如何解釋<int, long>轉換爲字符串數組/列表?
請幫忙! 謝謝,
〜Nikku。
我想一個字典轉換爲字符串數組(或列表)
字符串陣列需要這樣被返回:「ID,PTS」,其中int是ID和長是PTS。如何解釋<int, long>轉換爲字符串數組/列表?
請幫忙! 謝謝,
〜Nikku。
var strings = dict.Select(item => string.Format("{0}, {1}", item.Key, item.Value));
注意它返回一個枚舉。無論你想要的結果在string[]
或List<string>
形式,你應該使用分別.ToArray()
或.ToList()
。
你可以這樣說:
string[] arr =
theDictionary
.Select(kvp => kvp.Key.ToString() + ", " + kvp.Value.ToString())
.ToArray();
簡單的答案是遍歷字典,和值複製到一個字符串列表。
Dictionary<int, long> dict = new Dictionary<int, long>();
// If you like Linq. Stick a .ToArray() or .ToList() at the end, or leave it as IEnumerable<string>
var stringList = dict.Select(kvp => kvp.Key.ToString() + ", " + kvp.Value.ToString());
// If you don't like Linq.
List<string> stringList2 = new List<string>();
foreach (KeyValuePair<int, long> kvp in dict)
{
stringList2.Add(kvp.Key.ToString() + ", " + kvp.Value.ToString());
}
這既不是數組,也不是一個列表。您需要用'.ToList()'或'.ToArray()'來實現它作爲收藏品,現在它只是可以從字典中讀取一個枚舉。 – Guffa
@Guffa是的,那是真的。我故意拋出它,但我想根據這個問題,它應該引起OP的注意。 – Marlon