使用特殊?变量,当我们遍历列表时,它获取列表中每个项目的值。 在新版本的NetLogo软件中有什么替代用途?
答案 0 :(得分:2)
新的arrow syntax与NetLogo 6一起引入。不仅可以将事物引用为?
,还可以实际命名变量:
foreach [ 0 1 2 3 ] [ x ->
print x
]
这还允许您嵌套这些类型的块并仍然引用所有值:
foreach [ 0 1 2 3 ] [ x ->
foreach [ 4 5 6 7 ] [ y ->
print x + y
]
]
以前,您必须使用let x ?
来执行此操作。使用map
和filter
之类的原语,您根本无法做到这一点,因此是一个很大的改进。请注意,如果您有多个变量,则必须用[]包裹参数:
(foreach [0 1 2 3] [4 5 6 7] [ [x y] ->
print x + y
])