0

返回值 返回新初始化的数据检测器。如果遇到错误返回 nil,并且 error 包含错误。

这就是苹果文档所说的所有内容NSDataDetector,它是init.

它是否仅包含在 a 中,do try catch因为您可能会为其提供一组NSTextCheckingType将失败的集合,init或者它是否具有一些可能使其失败的依赖项?

或者换一种说法:

如果一个初始化工作一次,它会一直工作,然后我可以使用吗try!

这有效:

guard let detector = try? NSDataDetector(types: NSTextCheckingType.Date.rawValue) else {
    return
}

所以这总是有效的:

let detector = try! NSDataDetector(types: NSTextCheckingType.Date.rawValue)

在某些情况下,不必处理选项会很棒。当然,课程可能有一天会改变,然后它可能会失败。所以这个问题NSDataDetector就像它今天存在的那样。


更新 :

NSDataDetector并且所有NSTextCheckingType的都可以从 iOS 4 中获得。这让我觉得一旦 init 工作,它就会一直工作。

接下来我会检查:

接受 OptionSetType 的所有 init 或所有函数都是错误的吗?

4

0 回答 0