【问题标题】:Swift how to catch error from Set removeFirst?Swift 如何从 Set removeFirst 中捕获错误?
【发布时间】:2020-12-29 16:00:56
【问题描述】:

我是 Swift 初学者(谁不是...)。

我只是想捕捉removeFirst()引起的错误。

示例(第三个removeFirst() 导致错误):

var sockets : Set<Int> = Set(1..<3)

print(sockets.removeFirst())
print(sockets.removeFirst())
print(sockets.removeFirst())

我怎样才能做到这一点?

【问题讨论】:

    标签: swift error-handling swift5


    【解决方案1】:

    您不能catch 超出范围的错误,但您可以避免它们它们发生之前

    var sockets = Set(1..<3)
    
    if !sockets.isEmpty { print(sockets.removeFirst()) }
    if !sockets.isEmpty { print(sockets.removeFirst()) }
    if !sockets.isEmpty { print(sockets.removeFirst()) }
    

    【讨论】:

    • 好的。所以我不必再看下去了。 removeFirst() -&gt; Element? 会更像 Swift。
    • @user18451290 你可以简单地使用popFirst(),如果你的应用程序不会崩溃并且如果集合是空的,它将返回nilprint(sockets.popFirst() ?? "isEmpty")
    猜你喜欢
    • 2017-03-19
    • 1970-01-01
    • 2016-06-28
    • 1970-01-01
    • 2016-09-25
    • 2018-05-15
    • 1970-01-01
    • 2015-10-06
    • 2016-12-07
    相关资源
    最近更新 更多