考虑这段代码
let a, b, c = ...
let mutable l = [a]
if conditionB then l <- b :: l
if conditionC then l <- c :: l
Run Code Online (Sandbox Code Playgroud)
我觉得这违背了语言原则.这是正确的方式还是我错过了什么?
编辑:
l然后返回结果
序列表达式(https://docs.microsoft.com/en-us/dotnet/articles/fsharp/language-reference/sequences)非常适用于此目的.
[
if conditionC then yield c
if conditionB then yield b
yield a
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
484 次 |
| 最近记录: |