ios - 如何将字典值传递给数组?

标签 ios arrays dictionary swift3

var params = [[String:Any]]()

for i in 0 ..< QuesCount  {
    self.params.append([self.key1[i] : self.value1[i],
                            self.key2[i] : self.value2[i]])
}

输出:

self.params= [["answer[0][question_id]": "1", "answer[0][ans_id]": "21"], ["answer[1][question_id]": "2", "answer[1][ans_id]": "26"], ["answer[2][ans_id]": "36", "answer[2][question_id]": "5"], ["answer[3][ans_id]": "40", "answer[3][question_id]": "6"], ["answer[4][question_id]": "7", "answer[4][ans_id]": "41"], ["answer[5][question_id]": "8", "answer[5][ans_id]": "46"], ["answer[6][ans_id]": "49", "answer[6][question_id]": "9"], ["answer[7][question_id]": "10", "answer[7][ans_id]": "54"], ["answer[8][question_id]": "11", "answer[8][ans_id]": "57"]]

但问题是我想要:

期望的输出:

["answer[0][question_id]": "1", "answer[0][ans_id]": "21"], ["answer[1][question_id]": "2", "answer[1][ans_id]": "26"], ["answer[2][ans_id]": "36", "answer[2][question_id]": "5"], ["answer[3][ans_id]": "40", "answer[3][question_id]": "6"], ["answer[4][question_id]": "7", "answer[4][ans_id]": "41"], ["answer[5][question_id]": "8", "answer[5][ans_id]": "46"], ["answer[6][ans_id]": "49", "answer[6][question_id]": "9"], ["answer[7][question_id]": "10", "answer[7][ans_id]": "54"], ["answer[8][question_id]": "11", "answer[8][ans_id]": "57"]

如何获得理想的输出?

最佳答案

我不会回答你的问题,因为它对我来说看起来不是很方便的解决方案。

您应该避免使用复杂的字典结构,这样将来会很难管理。您可以根据您的要求使用structclass,既简单又方便可读。

由于我不知道您正在使用的实际结构,因此仅作为示例 例如

struct  Question {

   var questionID:String?
   var question:String?
   var answersOption:[Options]?

   var correctAnswer:Options?{
       return self.answersOption.filter{$0.isCorrectAnswer == true}
   } 


}

struct Options {
   var answerID:String?
   var answer:String?
   var isCorrectAnswer = false
}

现在您可以创建问题数组,其中包含选项和正确答案;酷吧

希望对你有帮助

关于ios - 如何将字典值传递给数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51361137/

相关文章:

ios - Swift - HTTP 加载失败(通过 alamofire 上传图像时错误代码 : -1005 [4:-4]),。

ios - 在 IOS 中的应用程序之间共享数据

java - 数组函数的时间复杂度

android - 无法在 Android Activity 中设置按钮监听器

c++ - 值从 QVector 中消失

iphone - 如何使用 Accelerate 框架从矩阵中查找特征值和特征向量?

ios - 函数返回值为空 : Why?

c - 字符数组作为 C 中的队列

c# - 3D 数组到 2D 数组 - 忽略维度

c# - 为什么 ConcurrentDictionary 有 AddOrUpdate 和 GetOrAdd,而 Dictionary 没有?