【问题标题】:how to check whether the given dictionary keys (API data) are of type Int : swift如何检查给定的字典键(API 数据)是否为 Int 类型:swift
【发布时间】:2016-12-13 05:08:28
【问题描述】:

这是来自 API 调用的 myDictionary 响应:

 {
    "table" = [0 = ["b": "2"], 1 = ["b": "4"], 2 = ["b": "20"], 3 = ["b": "27"], 4 = ["b": "2015"], f = "0", s = "0", p = "10"]
 }

如何检查字典“键”是否可用,以及它们是否为 Int 类型。如何检查给定的数据是否可以显示在表格视图中,只有 1, 2, 3 , 4 , 5, 6 以及更多的递增顺序作为上述字典的键字典 table 的键 && 排除其他键 (asAbove: key: f, s & p) ..

谁能给我推荐一些例子吗..

【问题讨论】:

  • 您的密钥是 Int 类型,但它是 String 形式。
  • 是的,但我们不能使用“(Int)”检查它吗??

标签: swift loops dictionary key


【解决方案1】:
     let keys = demo["data"]!["table"]!.keys

     for k in keys{
       var num = Int(k)
       if num != nil {
         print("Valid Integer")
       }
       else {
        print("Not Valid Integer")
      }
    }

【讨论】:

  • 我按照你的建议做了以下操作: let keys = tblData.keys for k in keys{ let num = Int(k) if num != nil { let keydata = tblData[k]![" bill_date"] print(keydata) } else { print("Not Valid Integer") } }
  • 但它打印 Optional(2016-07-26) Optional(2016-10-27) Not Valid Integer Not Valid Integer Optional(2015-12-29) Optional(2015-07-27) Optional (2016-11-22)无效整数可选(2015-07-27)
  • 是的,它正在循环中,但在循环中缺少一些值。为什么?我们可以得到排序形式的数据吗..
  • 我刚刚为键添加了排序方法 let keys = tblData.keys.sort() 现在,一切正常。非常感谢@john
猜你喜欢
  • 1970-01-01
  • 2020-02-20
  • 2014-07-28
  • 2019-07-05
  • 2021-08-03
  • 2023-04-03
  • 2010-12-08
  • 1970-01-01
相关资源
最近更新 更多