anyObject转换为字符串

时间:2014-11-15 17:02:38

标签: ios swift parse-platform

我试图将关键价格的对象转换为NSString,但无论我做什么,我都会在后续行中获得lldb错误

arrayDic.setValue(object.objectForKey("price") as NSString, forKey: "price")

当我删除它时没有错误。 object.objectForKey(" price")是解析数据库中的数字类型。如何将其正确转换为字符串?

代码:

func loadItems() {
    var query = PFQuery(className:"Items")
    query.orderByAscending("createdAt")
    query.findObjectsInBackgroundWithBlock {
        (objects: [AnyObject]!, error: NSError!) -> Void in
        if error == nil {


            for object in objects {

                arrayDic.setValue(object.objectForKey("price") as NSString, forKey: "price")
                arrayDic.setValue(image, forKey: "image")



            }


        } else {
            // Log details of the failure
            NSLog("Error: %@ %@", error, error.userInfo!)
        }
    }
}

1 个答案:

答案 0 :(得分:1)

  

object.objectForKey("price")是解析数据库中的数字类型

那你为什么说这是一个字符串?请记住,as不会转换任何内容;这是对真相的主张。如果你撒谎,你当然会崩溃。不要说谎!

我认为它是一个NSNumber。如果我是对的,请说as NSNumber

由于这个 是一个数字,你不应该希望将它作为字符串存储在arrayDic中,所以只需将其保留为数字。

(另外,如果arrayDic是字典,则不应该使用valueForKey: - 你可以,但这是愚蠢和迂回,可能会产生意想不到的后果。)