当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Julia Broadcast.broadcastable用法及代码示例


用法:

Broadcast.broadcastable(x)

返回 x 或类似 x 的对象,使其支持 axes 、索引,并且其类型支持 ndims

如果 x 支持迭代,则返回值应具有与 collect(x) 相同的 axes 和索引行为。

如果 x 不是 AbstractArray 但它支持 axes 、索引,并且其类型支持 ndims ,则可以实现 broadcastable(::typeof(x)) 以仅返回自身。此外,如果 x 定义了自己的 BroadcastStyle ,则它必须定义自己的 broadcastable 方法以返回自身,以使自定义样式生效。

例子

julia> Broadcast.broadcastable([1,2,3]) # like `identity` since arrays already support axes and indexing
3-element Vector{Int64}:
 1
 2
 3

julia> Broadcast.broadcastable(Int) # Types don't support axes, indexing, or iteration but are commonly used as scalars
Base.RefValue{Type{Int64}}(Int64)

julia> Broadcast.broadcastable("hello") # Strings break convention of matching iteration and act like a scalar instead
Base.RefValue{String}("hello")

相关用法


注:本文由纯净天空筛选整理自julialang.org 大神的英文原创作品 Base.Broadcast.broadcastable — Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。