как лучше всего в С# преобразовать строку в int []

Возможный дубликат:
Разделить строку, преобразовать ToList ‹int›() в одну строку

у меня есть строка, которая выглядит так.

string s = "1,6,4,3,5,7,4";

и я хочу преобразовать это в массив целых чисел.

каков наилучший и самый быстрый способ сделать это на С#?


person leora    schedule 22.02.2011    source источник
comment
Я не знаю, как быстрее всего, но в C # 4 кратким способом было бы: var nums = Array.ConvertAll(s.Split(','), int.Parse);   -  person Ani    schedule 22.02.2011
comment
@jleedev, технически, дубликат не касается преобразования его в массив. Но ... ОП может просто добавить .ToArray().   -  person Kirk Woll    schedule 22.02.2011


Ответы (2)


использовать раздельный метод.

int[] array = s.Split(',').Select(str => int.Parse(str)).ToArray();

Хм, не знаю, самый ли быстрый способ, но самый простой :)

person Danil    schedule 22.02.2011
comment
вы можете использовать .Select(int.Parse) вместо .Select(str => int.Parse(str)) - person align; 25.09.2017

Надеюсь это поможет :)

int[] i = Array.ConvertAll(s.Split(','), new Converter<string, int>(delegate (string str) { return int.Parse(str); } ));
person PedroC88    schedule 22.02.2011
comment
Это не преобразует его в массив int. - person Kirk Woll; 22.02.2011
comment
Что приводит к массиву строк - person TurBas; 22.02.2011
comment
Приношу свои извинения за то, что не прочитал вопрос должным образом ... Я бы придерживался ответа @Danil. - person PedroC88; 22.02.2011