【发布时间】:2020-01-24 19:52:36
【问题描述】:
我想用 for 循环填充一个列表。我检查了这篇文章here,这有理由说明为什么下面的代码不会这样做,但是我的代码将是什么来实现它。我是 elixir 的新手,来自 Java 背景
old_data = ['a','b','c','d']
new_data = []
for data <- old_data do
new_data = List.insert_at(new_data, -1, data)
IO.puts(new_data)
end
IO.puts(old_data)
IO.puts("new data is #{new_data}.")
在向new_data 添加元素之前,我需要做一些操作,所以new_data = old_data 不是我要找的东西
【问题讨论】:
-
new_data = old_data会更简洁 -
由于作用域,代码不会这样做。
-
@GavinBrelstaff:感谢您的意见。在将元素添加到
new_data之前,我需要做一些操作,所以new_data = old_data不是我要找的东西。 -
哎呀,我错过了
new_data正在附加元素,返回 not reversed 列表的事实。我更新了答案。