#c_sharp
Как можно конвертировать строку чисел, разделённых пробелом, в массив int одной строкой кода? Поделил на строки, но как конвертировать это в массив int, не создавая дополнительного массива string, не знаю. int [] Mas = textBox1.Text.Split(' ')
Ответы
Ответ 1
Попробуйте следующее int[] a = textBox1.Text.Split(' ').Select(x => int.Parse(x)).ToArray(); Правильнее будет написать int[] a = textBox1.Text.Split(' '). Where(x => !string.IsNullOrWhiteSpace( x )). Select(x => int.Parse(x)).ToArray();Ответ 2
Раз уж пошел такой codegolf... короткий вариант без LINQ, если не нужно вырезать пробелы: Array.ConvertAll(text.Split(),int.Parse); чуть более длинный вариант для случая, когда нужно вырезать пробелы: Array.ConvertAll(Regex.Split(text,@"\s+"),int.Parse); Минимальные варианты через LINQ без/c RemoveEmptyEntries text.Split().Select(int.Parse).ToArray(); text.Split(new[]{' '},StringSplitOptions.RemoveEmptyEntries).Select(int.Parse).ToArray();Ответ 3
int[] result = textBox1.Text.Split( new[]{" "}, StringSplitOptions.RemoveEmptyEntries ).Select(x => int.Parse(x)).ToArray();Ответ 4
int[] a = textBox1.Text.Split(' ').Select(int.Parse).ToArray();
Комментариев нет:
Отправить комментарий