1 f#
let downTo n = 
    if (n.Equals(0)) then
        printfn "\n Empty List Provided \n";;
    else
        List.rev(List.init n (fun index -> index + 1));;
如果传递大于0的数字,我正在尝试创建列表'n'长度.如果没有,请打印错误消息.列表单独工作,但不在If-Else语句中.如何实现这一目标?请帮忙.
F#if表达式是表达式而不是语句.这意味着表达式的两个部分需要具有相同的类型.在这种情况下,一侧具有一种类型int list而另一侧具有一种类型unit.
这样的事情对你更有用:
let downTo n =
    if (n.Equals(0)) then
        printfn "\n Empty List Provided \n"
        []
    else
        List.rev(List.init n (fun index -> index + 1))
或者,你可以抛出异常,但这有一个缺点,你必须try/catch围绕它做.
| 归档时间: | 
 | 
| 查看次数: | 208 次 | 
| 最近记录: |