【发布时间】:2016-04-14 05:44:01
【问题描述】:
嘿,我的任务要求之一是我不使用类型注释。
目前我的代码是这样的
let (currentSeq: string) =
specie
|> Map.tryFind geneId
|> Option.get
let seq1 = currentSeq.[0..pos - 1]
let seq2 = currentSeq.[pos..String.length currentSeq - 1]`
我已经绞尽脑汁一段时间了,但我不知道如何在没有类型注释的情况下索引字符串 currentSeq 的“块”。
【问题讨论】:
-
有些时候你会被类型注释困住——这可能就是其中之一
-
这可能被认为是作弊,但您可以在技术上告诉编译器您有一个字符串,而无需使用类型注释,方法是将值传递给任何需要字符串的函数,然后再在代码中使用该值,甚至如果你扔掉结果。例如,
String.length specie |> ignore将为编译器确定specie必须是一个字符串,并且在那之后您将被允许以这种方式对待它。