Строка C# [] к интервалу [] [дубликат]

7
задан George Johnston 3 March 2010 в 15:37
поделиться

7 ответов

int[] a = Array.ConvertAll("123,456".Split(','), s => Int32.Parse(s));

Должно получиться отлично. Вы можете изменить лямбду, чтобы использовать TryParse, если вам не нужны исключения.

8
ответ дан 6 December 2019 в 04:59
поделиться
int[] a = "123,456".Split(’,’).Select(s => int.Parse(s)).ToArray();
6
ответ дан 6 December 2019 в 04:59
поделиться

Используйте это:

"123,456".Split(',').Select(s => int.Parse(s)).ToArray()
3
ответ дан 6 December 2019 в 04:59
поделиться
”123,456”.Split(’,’).Select( s => int.Parse(s) ).ToArray();
3
ответ дан 6 December 2019 в 04:59
поделиться

Думаю, вот так:

string[] sArr = { "1", "2", "3", "4" };
int[] res = sArr.Select(s => int.Parse(s)).ToArray();
3
ответ дан 6 December 2019 в 04:59
поделиться

Вот метод расширения. Это делается для строки, потому что вы не можете добавить статическую функцию к строке.

public static int[] ToIntArray(this string value)
{
    return value.Split(',')
        .Select<string, int>(s => int.Parse(s))
        .ToArray<int>();
}

Вот как вы его используете

string testValue = "123, 456,789";

int[] testArray = testValue.ToIntArray();

Предполагается, что вы хотите разделить на ',' если нет, то вам нужно изменить ToIntArray

2
ответ дан 6 December 2019 в 04:59
поделиться

Этот запрос linq должен выполнять это:

strArray.Select(s => int.Parse(s)).ToArray()
17
ответ дан 6 December 2019 в 04:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: