Visual studio 如何将列表添加到一起#
下面是我代码的一部分,我有许多房间叫做r#,并将它们放在各自行的列表中,但最后我试图将所有这些列表放在一起,形成一个包含所有房间的大列表。 我不是要列出单独的清单,而是列出所有房间的清单!第9行似乎是问题所在,似乎我使用了错误的cons运算符Visual studio 如何将列表添加到一起#,visual-studio,f#,Visual Studio,F#,下面是我代码的一部分,我有许多房间叫做r#,并将它们放在各自行的列表中,但最后我试图将所有这些列表放在一起,形成一个包含所有房间的大列表。 我不是要列出单独的清单,而是列出所有房间的清单!第9行似乎是问题所在,似乎我使用了错误的cons运算符 let r58 = {id=58;item=pot2;n=0;e=0;s=51;w=0;complete=false} let r59 = {id=59;item=m13;n=60;e=0;s=55;w=0;complete=false} let row1
let r58 = {id=58;item=pot2;n=0;e=0;s=51;w=0;complete=false}
let r59 = {id=59;item=m13;n=60;e=0;s=55;w=0;complete=false}
let row11 = [r58;r59]
let r60 = {id=60;item=m8;n=61;e=0;s=59;w=0;complete=false}
let r61 = {id=61;item=m9;n=0;e=0;s=60;w=0;complete=false}
let row12 = [r60;r61]
let roomlist = row1::row2::row3::row4::row5::row6::row7::row8::row9::row10::row11::row12
roomlist
要连接多个列表,请使用
List.concat
:
List.concat [row1; row2; row3; ... row12]
您可以使用
@
:row11@row12@…
附加列表。如果您有多个列表,List.concat
比使用@
更好。@
操作符一次处理两个列表,因此它将多次处理第一个列表a@b@c@d
首先将a
和b
相加,然后将ab
列表添加到c
,然后将abc
列表添加到d
。由于F#list是一种链表结构,必须从头到尾进行迭代,这意味着a
要迭代四次。另一方面,使用List.concat
,a
将只迭代一次。因此,List.concat
对于多个列表更有效。如果我的答案对您有所帮助,您介意接受吗?您可以通过单击问题左侧的灰色复选标记图像来执行此操作。