gpt4 book ai didi

ios - Swift/如何检查可选值的存在

转载 作者:搜寻专家 更新时间:2023-11-01 06:37:44 25 4
gpt4 key购买 nike

我有一个名为 deejayTweetsDictionaryNSDictionaryArray。在可选的 Key likes 中是 NSDictionaryArray

现在我想检查是否:user == likes?.valueForKey(user) as!字符串

只要 userlikes 范围内,我的代码就可以正常工作。如果我使用另一个帐户登录 - 使用另一个 user,应用程序崩溃:

 if likes?.valueForKey(user) as! String == user {

如果 likes 是可选的并且能够包含不同的 user NSDictionaries,我如何检查我的 if 语句?

        let tweets = deejayTweetsDictionary[indexPath.row]

let likes = tweets.valueForKey("likes")
let user = backendless.userService.currentUser.objectId

if likes != nil {

if likes?.valueForKey(user) as! String == user {
cell.liked = 1
} else {
cell.liked = 0
}
}

enter image description here

同样:likes 可能包含无穷多个 [user:user]

问题:如果 user 不在 likes 范围内,我该如何检查我的 if 语句?非常感谢您的帮助。

最佳答案

崩溃是因为行中的强制解包

if likes?.valueForKey(user) as! String == user {

试试这个方法:

if let userExist = likes?.valueForKey(user) as? String where userExist == user {

//Do your work.
}

您必须使用此可选绑定(bind)或保护关键字。

关于ios - Swift/如何检查可选值的存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39477497/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com