f# - 有没有办法连接两个 IActorRef 数组?
问题描述
我正在使用 f# 学习 AKKA.NET,但我被困在这里:这是代码:
// finalArr -> IActorRef array
let mutable neigh:IActorRef[]= [||] // IActorRef array
for i in [0.. 10] do
if i = 0 then
neigh.[0] <- finalArr.[0]
elif i = 10-1 then
neigh.[10-1] <- finalArr.[10-2]
else
neigh.[i] <- [ finalArr.[i-1] ; finalArr.[i+1] ] // Not working
我想过使用 Array.concatenate 但它不会工作,因为它期望 Array 而不是 IActorRef 数组。
解决方案
这一行给你一个列表,里面有两个数组(假设finalArr
是一个锯齿状数组):
neigh.[i] <- [ finalArr.[i-1] ; finalArr.[i+1] ]
您可以使用Array.append
:
neigh.[i] <- Array.append finalArr.[i-1] finalArr.[i+1]
或序列推导来展平您拥有的两个数组(请注意,数组的文字[| ... |]
用于括号):
neigh.[i] <- [| yield! finalArr.[i-1] ; yield! finalArr.[i+1] |]
推荐阅读
- python - 我们如何检查模拟请求是否真的是正确的?
- scala - 如何在 Scala 中正确使用模棱两可的隐式进行类型否定
- chirp - Chirp SDK 中是否有注入录制后处理的音频文件的方法?
- c++ - 使用 _Generic 定义宏给出不允许的类型名
- python - 如何更改为背景颜色
- python - 快速傅里叶变换信号重建的奇怪结果
- sql-server - 无法使用 SQLAlchemy 连接到 Azure 数据仓库(现在称为 Synapse)
- wix - 如何在 WiX 中使用 light.exe 在命令行中引用变量
- reactjs - 反应原生:改变父组件的状态
- java - 构建树中的 spring-security-core 冲突版本问题