首页 > 解决方案 > Julia append!() 无法将 Char 类型的对象“转换”为 String 类型的对象

问题描述

我正在尝试将字符串添加到数组中,如下所示:

arry = String[]
append!(arry, "test")

但我收到以下错误:

Cannot `convert` an object of type Char to an object of type String

为什么在添加字符串而不是字符时出现此错误?

(为了其他 Julia 新手的利益,在下面发布我自己的答案 - 任何有更多有用提示的人请加入!)

标签: julia

解决方案


我看不到您的答案,但这是一个典型的模式。

您可以push!使用单个元素或append!集合:

julia> arry = String[]
0-element Array{String,1}

julia> push!(arry, "test")
1-element Array{String,1}:
 "test"

julia> append!(arry, ("test",))
2-element Array{String,1}:
 "test"
 "test"

julia> append!(arry, ["test"])
3-element Array{String,1}:
 "test"
 "test"
 "test"

julia> append!(arry, Ref("test"))
4-element Array{String,1}:
 "test"
 "test"
 "test"
 "test"

请注意,集合可以是例如 a Tuple、 aVectorRef(这是广播中经常遇到的一种 0 维和非分配集合)。


推荐阅读