append!() により文字列を配列要素として追加するとき,以下のようにすると文字列が分解されて 1 文字ずつの Char 型で追加される。
a = []
append!(a, "12345")
a
#=
5-element Vector{Any}:
'1': ASCII/Unicode U+0031 (category Nd: Number, decimal digit)
'2': ASCII/Unicode U+0032 (category Nd: Number, decimal digit)
'3': ASCII/Unicode U+0033 (category Nd: Number, decimal digit)
'4': ASCII/Unicode U+0034 (category Nd: Number, decimal digit)
'5': ASCII/Unicode U+0035 (category Nd: Number, decimal digit)
=#
typeof(a[1]) # Char
普通は,そうなることは望まない。文字列そのものを追加するときは,追加される文字列を配列として渡す。すなわち [ ] で囲む。
b = []
append!(b, ["12345"])
b
#=
1-element Vector{Any}:
"12345"
=#
typeof(b[1]) # String
なぜ文字列一個なのに配列にしなければならないかというのは追加される文字列は 2 個以上でもよいからである。
上に引き続いてさらに 2 個の文字列を追加してみる。
append!(b, ["abc", "XYZ"])
b
#=
3-element Vector{Any}:
"12345"
"abc"
"XYZ"
=#
※コメント投稿者のブログIDはブログ作成者のみに通知されます