При необходимости в особом представлении с плавающей точкой необходимо будет создать это семантически от самого плавания, не копированием бита.
c0x стандарт: http://c0x.coding-guidelines.com/5.2.4.2.2.html не определяет формат чисел с плавающей точкой.
Для данного массива вы можете использовать метод Array.ConvertAll
:
int[] myInts = Array.ConvertAll(arr, s => int.Parse(s));
Спасибо Марку Гравеллу за указание на то, что лямбда-выражение можно опустить, что дает более короткую версию, показанную ниже:
int[] myInts = Array.ConvertAll(arr, int.Parse);
Решение LINQ аналогично, за исключением того, что вам потребуется дополнительный вызов ToArray
для получения array:
int[] myInts = arr.Select(int.Parse).ToArray();
РЕДАКТИРОВАТЬ: преобразовать в массив
int[] asIntegers = arr.Select(s => int.Parse(s)).ToArray();
Это должно помочь:
var asIntegers = arr.Select(s => int.Parse(s));
var asIntegers = arr.Select(s => int.Parse(s)).ToArray();
Необходимо убедиться, что вы не получаете IEnumerable
в качестве возврата