如何处理 Swift 的“尝试”?导致“尝试的结果?未使用”? [复制]

Posted

技术标签:

【中文标题】如何处理 Swift 的“尝试”?导致“尝试的结果?未使用”? [复制]【英文标题】:What to do with Swift's "try?" that cause "Result of try? is unused"? [duplicate] 【发布时间】:2016-01-12 09:02:11 【问题描述】:

我想调用一些可以throw 的方法。同时我不关心可能抛出的异常,我只想调用方法。但是,如果我尝试做这样的事情:

try? managedObjectContext.save()

我收到警告“尝试的结果?未使用”。 在这种情况下我该怎么办?静音警告?如何?

做这样的事情:

let error: NSError = try? managedObjectContext.save()

?表达式变成两倍大,我得到未使用的常量。

【问题讨论】:

【参考方案1】:

根据您的要求,“同时我不关心可能抛出的异常,我只想调用方法”,这样做:

try! managedObjectContext.save()

但是如果抛出错误它会崩溃。因此,请使用以下代码片段以确保安全:

_ = try? managedObjectContext.save()

【讨论】:

由于我的注意力不集中,我错过了这种变体)你是对的。 如果抛出错误将会崩溃。查看链接副本的答案。【参考方案2】:

我认为你需要这样的东西。

Do 
 try managedObjectContect.Save()

catch let error 
   print("error")

【讨论】:

以上是关于如何处理 Swift 的“尝试”?导致“尝试的结果?未使用”? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何处理 NSData 并返回 UIImage (Swift)

如何处理包含 Swift 结构作为属性的 Swift 结构的编码

swift - 如何处理未捕获的异常

如何处理 swift 3 中的错误?

SwiftUI:如何处理 BLE 响应并显示新值

Fs 错误地读取或保存导致 NaN 的文件。如何处理?