Итак, у меня есть строка с разделителями-запятыми, например 1,5,7
, поэтому какой самый простой и родной способ конвертировать этот string
в int[]
? Я могу написать свою собственную функцию разделения, но есть некоторый интерес, как это сделать в большинстве своем.
Спасибо заранее, ребята!
Какой самый простой способ преобразования разделенной запятой строки в int []?
Ответ 1
string s = "1,5,7";
int[] nums = Array.ConvertAll(s.Split(','), int.Parse);
или, версия LINQ-y:
int[] nums = s.Split(',').Select(int.Parse).ToArray();
Но первый должен быть более быстрым.
Ответ 2
string numbers = "1,5,7";
string[] pieces = numbers.Split(new string[] { "," },
StringSplitOptions.None);
int[] array2 = new int[pieces.length];
for(int i=0; i<pieces.length; i++)
array2[i] = Convert.ToInt32(pieces[i]);
Ответ 3
Здесь вы идете.
string numbers = "1,5,7";
List<int> numlist = new List<int>();
foreach (string number in numbers.Split(','))
numlist.Add(Int32.Parse(number));