簡體   English   中英

如何將 string[] 轉換為列表<int> ?

[英]How I can convert string[] to list<int>?

如何將字符串數組轉換為 int 列表? (沒有用我自己的方法一一轉換)

通過在 google 中搜索,我看到了名為 ToList() 和 ConvetAll() 的方法,但我無法輸入它們,這是為什么?

我試過的是:

new list<int>((int[])s.Split(','));

我收到錯誤,我無法將 string[] 轉換為 int[] :(

這里涉及一個兩步過程。 首先是將字符串轉換為整數,然后將數組轉換為列表。 如果可以使用LINQ,最簡單的方法是使用:

stringArray.Select(x => Int32.Parse(x)).ToList();

從您的代碼中獲取提示:

var listOfInts = s.Split(',').Select(Int32.Parse).ToList();

嘗試使用

int x = 0; 

var intList= stringList.Where(str => int.TryParse(str, out x)).Select(str => x).ToList();
public List<int > M1()
{
    string[] s =(file path));
    Array.Sort(s);
    var c = new List<int>();
    foreach(string x in s)
    {
        c.Add(Convert.ToInt32(x));
    }
    return c;
}

使用以下:

var list = s.Select(Int32.Parse).ToList();

嘗試一下:

 var selectedEditionIds = input.SelectedEditionIds.Split(",").ToArray()
                        .Where(i => !string.IsNullOrWhiteSpace(i) 
                         && int.TryParse(i,out int validNumber))
                        .Select(x=>int.Parse(x)).ToList();

對於 VB.NET,我必須循環執行

Dim myList As New List(Of Integer)
For Each item As String In s.Split(",")
    myList.Add(Val(item))
Next

可能已經能夠使用一些內置函數來解決它,但不想花太多時間在上面。

假設values是您的字符串列表:

int[] ints = new int[values.Count];

int counter = 0;
foreach (string s in values) {
    ints[counter++] = int.Parse(s);
}

不要讓自己過於復雜:)

var s = "1,2,3,4,5,6,7,8,9";
var result = s.Split(',').Select(Convert.ToInt32).ToList();

暫無
暫無

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

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