F# - 将 char 转换为 int

标签 f# functional-programming

在 F# 中为项目编码时,我想将 char 转换为 int。 IE。

let c = '3'
c |> int //this will however give the ascii value of 3 I believe

我的问题是,在 char 只包含一个数字的情况下,将单个 char 转换为 int 而不将 char 转换为字符串或其他类型的最佳方法是什么?

最佳答案

假设您已经验证了该字符并知道它是一个 ASCII 数字,您可以执行以下操作:

let inline charToInt c = int c - int '0'

let c = '3'
c |> charToInt

Online Demo

备注如果您最终需要一个 float而不是 int有一个内置机制: System.Char.GetNumericValue

关于F# - 将 char 转换为 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42820232/

相关文章:

functional-programming - KDB:使用动态列创建空表

generics - F# 中 OCaml 样式泛型类型参数的语法是什么?

F# - 在声明中指定类型

f# - FS0039 : The namespace is not defined

scala - 在 Scala 中将命令式 for 循环重写为声明式样式

functional-programming - SML:基本 Prime 测试

python - 从字典中过滤项目并处理子集

reactjs - 在 React 中将函数传递给 setState() 有什么好处?

f# - 如何在 VS2013 中自定义用于对文本进行着色的模式/语法匹配?

performance - Seq.map 比常规 for 循环更快?