gpt4 book ai didi

ios - 数组内的 JSON 数组

转载 作者:行者123 更新时间:2023-11-28 11:44:56 25 4
gpt4 key购买 nike

我正在寻找访问位于另一个数组内部的 JSON 数组内部的字符串。我正在使用 JSONDecoder 访问 JSON API。我在尝试过去使用 JSON 数组时使用的各种方法时收到错误消息。

代码如下:

var country = [Results]()

struct Rating: Codable {
let results: [Results]
}

struct Results: Codable {
let iso_3166_1: String
let release_dates: [Release_Dates]
}

struct Release_Dates: Codable {
let certification: String
}


func loadRating() {

let id = filmId
let apiKey = ""
let url = URL(string: "https://api.themoviedb.org/3/movie/\(id)/release_dates?api_key=\(apiKey)")
let request = URLRequest(
url: url! as URL,
cachePolicy: URLRequest.CachePolicy.reloadIgnoringLocalCacheData,
timeoutInterval: 10 )

let session = URLSession (
configuration: URLSessionConfiguration.default,
delegate: nil,
delegateQueue: OperationQueue.main
)

let task = session.dataTask(with: request, completionHandler: { (dataOrNil, response, error) in
if let data = dataOrNil {
do { let rates = try! JSONDecoder().decode(Rating.self, from: data)
self.country = rates.results
let us = self.country.filter({ $0.iso_3166_1.contains("US") })
print(us)


}
}

})

task.resume()
}

us 打印到控制台

[Film.DetailsView.Results(iso_3166_1: "US", release_dates: [Film.DetailsView.Release_Dates(certification: "PG-13")])]

我正在尝试访问 certification 字符串。

实现此目标的正确方法是什么?

最佳答案

usResults 的数组。

要获得第一个认证,请​​使用:

print(us.first!.release_dates.first!. certification)

为简洁起见,我强制解包,您应该使用可选绑定(bind)或 guard 语句正确地执行此操作。

关于ios - 数组内的 JSON 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52784393/

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