list - 如何使用选项从 f# 中的列表中获取第 n 个元素
问题描述
我是 f# 的新手,我正在尝试做这个练习:“实现一个函数”
let rec nth(n : int) (l : List<'a>) : Option<'a> =
返回 l 中位置 n 的元素。该函数必须适当处理索引无效的情况
这是我当前的代码,但我有点卡住了:
let rec nth (n : int) (l : List<'a>) : Option<'a> =
if n > l.Length then
None
else
match l with
| [] -> None
谢谢您的帮助!
解决方案
有一个内置函数 List.tryItem
let rec nth(n : int) (l : List<'a>) : Option<'a> =
l |> List.tryItem n
推荐阅读
- python - 如何在 python CSV 中编写表情符号?
- html - 您可以在一个表单上同时运行 JavaScript 和 jQuery 脚本吗?
- javascript - AgGrid 问题(与过滤器类型有关)
- swift - Firebase UI 对我不起作用(无法下载图像) swift
- ajax - JSF2 - SelectOneMenu 在第一次 setter 调用后“挂起”
- arduino - Arduino 将值从 file.read() 转换为 const char*
- json - 如何通过命令行或手动将 json 文件数据加载到现有的 couchbase 存储桶中?
- angular - 如何从详细信息页面Angular 9中的单个对象(本地JSON)获取详细信息
- sql - 存储过程不适用于动态 where 子句
- css - 字体显示在桌面但不在移动设备上