我是函数式编程领域的新手,刚开始学习Scheme(尽管它是一种半功能编程语言)。我在列表上做了一些教程,这些教程在Scheme中得到了很好的支持。我想知道Scheme是否支持摆弄数组?
或者我是否需要定义自己的数据类型?列表是归纳定义的数据类型。如果我要将数组定义为新的数据类型,那么可以归纳定义吗?
请帮忙。 提前谢谢。
欢呼声
答案 0 :(得分:10)
您正在寻找vector。
(define arr (vector 1 2 3))
(define arr '#(1 2 3))
答案 1 :(得分:2)
您可以使用向量表示数组。 Scheme中的向量在你可以改变它们的意义上是不起作用的(使用vector-set!)。但是,列表可以使用set-car进行变异!和set-cdr!。