Closed alwc closed 4 years ago
@alwc
If you want N-dimensional array, use toArray
function I just implemented.
e.g.)
let a = MfArray([[2, -7, 0],
[1, 5, -2]])
guard let swiftNdArray = a.astype(.Int32).toArray() as? [[Int32]] else{ fatalError() }
print(swiftNdArray)
/*
[[ 2, -7, 0],
[ 1, 5, -2]]
*/
Or, if you want flatten array, use flatten
function and toArray
like this
let a = MfArray([[2, -7, 0],
[1, 5, -2]])
guard let swiftFlattenArray = a.astype(.Int32).flatten().toArray() as? [Int32] else{ fatalError() }
print(swiftFlattenArray)
/*
[ 2, -7, 0, 1, 5, -2]
*/
From now, you can get swift's Array with Int
by toArray
method of MfArray with MfType.Int
like this;
let a = MfArray([[2, -7, 0],
[1, 5, -2]])
guard let swiftNdArray = a.toArray() as? [[Int]] else{ fatalError() }
print(swiftNdArray)
/*
[[ 2, -7, 0],
[ 1, 5, -2]]
*/
guard let swiftFlattenArray = a.flatten().toArray() as? [Int] else{ fatalError() }
print(swiftFlattenArray)
/*
[ 2, -7, 0, 1, 5, -2]
*/
Thanks @jjjkkkjjj !
Hi @jjjkkkjjj . After I did some math transformations in a
MfArray
, I want to convert it back to a Swift's Array. What's the most efficient way to do it using your library?For example, I want to convert the
MfArray
back to[Int]
. Right now I'm doing it this way: