簡體   English   中英

將字符串轉換為列表<string>

[英]converting string to List<string>

我正在嘗試使用linq將字符串轉換為字符串列表。 我嘗試下面的代碼行:

value = "one,two,three,four";

List<string> arr = value.Split(',').Select(s => s.ToList());

但是我得到了錯誤:

錯誤1無法將類型'System.Collections.Generic.IEnumerable>'隱式轉換為'System.Collections.Generic.List'。 存在顯式轉換(您是否缺少演員表?)

如果有人可以提供一些幫助,那將是很棒的。

您好,您可以嘗試

 value.Split(',').ToList();

您在每個單獨的數組元素(即每個字符串)上都有ToList 該調用本身是有效的,因為string實現了IEnumerable<char> ,但這意味着您要創建的IEnumerable<List<char>>並不是您想要的。

我認為您根本不需要Select -只需使用:

List<string> arr = value.Split(',').ToList();

列表構造函數之一采用一個枚舉

var arr = new List<string>(value.Split(','));

不知道為什么人們堅持LINQ擴展一切 ...

value = "one,two,three,four";

List<string> arr = value.Split(',').Select(s => s).ToList();

或更簡單:

List<string> arr = value.Split(',').ToList();

即使您不需要選擇,但仍然要使用它,則應該為:

  List<string> arr = value.Split(',').Select(s => s).ToList();

或者您可以簡單地執行以下操作:

  List<string> arr = value.Split(',').ToList();

您不需要選擇:

value = "one,two,three,four";

List<string> arr = value.Split(',').ToList();
string value = "one,two,three,four";
List<string> arr = value.Split(',').ToList();

您無需在此處使用LINQ,而只需執行以下操作:

string value = "one,two,three,four";
List<string> arr = value.Split(',').ToList();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM