我要用阿拉莫火发送阵列。
我所拥有的
let params: Parameters = [
id:job.id ?? 0,
]我还必须以这种格式( jobs[0]=1, jobs[1]=2等)发送数组到后端,我的键是作业,值是1。
这是Java上的公式
for (int i = 0; i < size; i++) {
final int id = job.getPuIds().get(i);
params.put("job" + "[" + i + "]", String.valueOf(id));
}我怎么能这么做?
发布于 2017-08-04 20:48:25
下面是一个示例,说明如何以快速语法打印所需的字符串:
for i in 0...jobs.count-1 {
print("job[\(i)]=\(jobs[i].id)")
}但我觉得你应该试试这个
发送一个包含“作业”键和数组作为该键的值的字典。
var ids = [Int]()
for job in jobs {
ids.append(job.id)
}
var params = ["jobs":ids]编辑:更干净的代码-特别感谢@Alexander
let params = ["jobs": jobs.map{ $0.id }]发布于 2017-08-04 20:55:01
按照Java中的实现,您可以在Swift中使用以下方法进行相同的实现:
var params: [String:Any] = [:]
for (index, _) in yourArray.enumerated() {
let id = job.getPuIds()[index]
params["job[\(index)]", "\(id)"]
}查看您的实现,我想我可以猜到size变量是基于job.getPuIds()返回的,在这种情况下,代码可以简化:
var params: [String:Any] = [:]
for (index, id) in job.getPuIds().enumerated() {
params["job[\(index)]", "\(id)"]
}https://stackoverflow.com/questions/45515174
复制相似问题