Crystal将数组添加到数组中

时间:2017-10-10 05:45:24

标签: arrays crystal-lang

如何在Crystal中向数组添加元素?

我试过了:

var = Array(Int32)
var << 42 # error : undefined method '<<'
var += 42 # error : undefined method '+'
var.add(42) # error : undefined method 'add'

我做错了什么? 甚至可以动态地将元素添加到数组中吗?

1 个答案:

答案 0 :(得分:8)

问题是你没有初始化课程。 var = Array(Int32)应该是以下任何一种:

var = Array(Int32).new
# or
var = [] of Int32

然后附加:

var << 42

您目前正在做的是创建对Array类的引用,然后您可以使用它来执行某些类型检查。例如:

ref = Array(Int32)
arr = [] of Int64

puts typeof(arr) == ref # false