如何检查字符串是否为有效整数?

问题描述

假设我有

val s = "123"
val r = "a123h"

如何检查 s 是否可以解析为有效整数?

解决方法

to-intcore的签名是

public lostanza defn to-int (s:ref<String>) -> ref<False|Int>

所以你需要:

defn is-int? (s: String) -> True|False :
  to-int(s) is Int

注意:to-int 除十进制字符串外,还接受十六进制 0x...、八进制 0o... 和二进制 0b... 字符串表示。