2016-04-08 89 views
0

我试图用字典在swift中创建json对象,但代码变得越来越长。有没有办法减少例如这段代码的行数?你可以看到,两个字典是一样的,除了“id”字段 如果有可能,而无需使用外部库哪个是在swift中创建json对象的最佳方式?

var product: [String: String] = [ 
      "chemical_id":String(activity.chemical!.id), 
      "plague_id":String(activity.plague!.id), 
      "justification":activity.justification!, 
      "amount":activity.amount!, 
      "amount_scope":activity.amount_scope!, 
      "security_time":activity.security_time!, 
      "effectiveness": activity.effectiveness! 
     ] 
     if activity.id != -1 { 
      product = [ 
       "id":String(activity.id), 
       "chemical_id":String(activity.chemical!.id), 
       "plague_id":String(activity.plague!.id), 
       "justification":activity.justification!, 
       "amount":activity.amount!, 
       "amount_scope":activity.amount_scope!, 
       "security_time":activity.security_time!, 
       "effectiveness": activity.effectiveness! 
      ] 
     } 
+1

这有什么好做JSON。这些只是普通的Swift词典。 –

+0

您可能会考虑首先检查id是否不等于-1以将id key添加到产品字典中,然后添加其他密钥 –

回答

2

只需添加它的条件

if activity.id != -1 { 
    product["id"] = String(activity.id) 
} 
+0

这就是我一直在寻找的。谢谢! – Dani

相关问题