[英]How to convert List<int> to string[]?
我需要一種簡單的方法將List<int>
轉換為string
數組。
我有:
var the_list = new List<int>();
the_list.Add(1);
the_list.Add(2);
the_list.Add(3);
string[] the_array = new string[the_list.Count];
for(var i = 0 ; i < the_array.Count; ++i)
the_array[i] = the_list[i].ToString();
......對我來說這看起來很難看。
有沒有更簡單的方法?
注意:我正在尋找一種更簡單的方法 - 不一定是更快的方式。
使用LINQ:
string[] the_array = the_list.Select(i => i.ToString()).ToArray();
對不起,我沒有在這台機器上安裝.NET,所以完全未經測試:
var theList = new List<int>() { 1, 2, 3 };
var theArray = theList.Select(e => e.ToString()).ToArray(); // Lambda Form
var theArray = (from e in theList select e.ToString()).ToArray(); // Query Form
我知道你有一個很好的答案,但你不需要LINQ或Select。 您可以使用ConvertAll和匿名方法來完成。 像這樣:
var list = new List<int>();
....
var array = list.ConvertAll( x => x.ToString() ).ToArray();
類似的想法,但我認為這不是linq。 萬一重要。
List有一個ToArray()方法。 它可以節省您的打字,但可能效率不高。
因為您的列表只有一個數字,所以您可以輕松地將它們轉換為字符串。 只需創建一個循環並將其成員轉換為字符串。
string[] the_array = new string[the_list.Count];
int i=0;
foreach(var item in the_list)
{
the_array[i] = item.ToString();
i++;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.