作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
想象一下,例如,有一个像这样的异构数组
julia> a = {1, 2.2, int32(3), float32(4.4), 5, 6.6}
6-element Array{Any,1}:
1
2.2
3
4.4
5
6.6
其元素的单一通用类型是Float64
。
是否有函数或简约命令将此类 Any
数组转换为具有单一通用类型(Array{Float64}
对于给定示例)的元素数组,而无需明确地写出那个类型或者甚至事先知道它?
我知道如果使用方括号 []
创建数组,首先会得到一个 Array{Float64}
。但是,问题是关于在创建时类型 1 无法控制的数组的转换(例如,某些数组推导、从文件中读取的数组……)。
最佳答案
您正在寻找的转换类型的函数称为 convert
julia> a = {1, 2.2, int32(3), float32(4.4), 5, 6.6}
f6-element Array{Any,1}:
1
2.2
3
4.4
5
6.6
julia> convert(Array{Float64,1},a)
6-element Array{Float64,1}:
1.0
2.2
3.0
4.4
5.0
6.6
编辑:我不确定我是否理解您的为什么您想要您要求的行为,但我认为解决您提出的问题(而不是您遇到的问题!)是:
[promote(a...)...]
关于julia - 如何将异构数组 (Array{Any}) 提升为具有单一公共(public)类型元素的同构数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22859208/
我是一名优秀的程序员,十分优秀!