UInt32 массив в двойной массив Swift
Мне нужно умножить 2 матрицы в swift, поэтому для использования ускорения мне нужно 2 массива с типом double. Проблема в том, что мне нужно умножить два массива типа UInt32. Есть ли способ конвертировать массив UInt32 в двойной массив?
var UInt32TestArray: [UInt32] = [1,4,2,3]
var Int32TestArray: [Double] = [Double](UInt32) //Doesn't work
3 ответа
Решение
Использование
UInt32TestArray.map { Double($0) }
чтобы получить массив Double
,
Я не думаю, что вы можете использовать актерский состав для таких вещей. Обычно вы используете функцию map для преобразования массива одного типа в другой. Ответ на аналогичный вопрос можно найти здесь. Преобразование всего массива из int в удвоение для выполнения некоторых арифметических операций
Попробуй это
var Int32TestArray = UInt32TestArray.map{UInt32(abs($0))}