gpt4 book ai didi

ios - 在 Swift 中将 AnyObject 向下转换为 Int(使用 Sprite Kit)

转载 作者:行者123 更新时间:2023-11-29 02:28:08 26 4
gpt4 key购买 nike

首先,我将一个整数保存到 NSMutableDictionary 中:

var levelNumber: Int = 3
var levelUserData: NSMutableDictionary = ["level": "\(levelNumber)"]
levelButton.userData = levelUserData

稍后,我检索整数:

var levelFromUserData: AnyObject! = levelButton.userData!.objectForKey("level")

这给了我想要的值,但我无法将其用作整数。如果我尝试像这样沮丧......

var levelIntFromUserData: Int = levelFromUserData as Int  // also tried as?, as!

..应用程序崩溃了。有什么想法吗?

最佳答案

您正在将级别编号转换为字符串。不能将字符串类型转换为 int,因为它们在逻辑上是不同的东西。但它可以解析自己。例如

var levelIntFromUserData = levelUserData["level"]!.integerValue

您绝对应该考虑只存储为 native 数字对象。您仍然需要 integerValue 调用,但存储和转换会更有效率。例如

var levelUserData: NSMutableDictionary = ["level": levelNumber]

关于ios - 在 Swift 中将 AnyObject 向下转换为 Int(使用 Sprite Kit),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27236631/

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