Swift 如何在下面的代码中将值附加到字典中

Swift 如何在下面的代码中将值附加到字典中,swift,dictionary,Swift,Dictionary,我有一本这样的字典 var students = ["student_id":2,"present":0] var students =[2:0] students[49] = 0 students[29] = 0 students[12]= 0 students[4]= 0 我从另一个ViewController获取学生id,因此我需要像这样附加它们 [49,29,12,4] var students =["student_id":2,"present":0,"student_id":4

我有一本这样的字典

var students = ["student_id":2,"present":0]
var students =[2:0]
students[49] = 0
students[29] = 0
students[12]= 0
students[4]= 0
我从另一个ViewController获取学生id,因此我需要像这样附加它们

[49,29,12,4]

var students =["student_id":2,"present":0,"student_id":49,"present":0,"student_id":29,"present":0,"student_id":12,"present":0,"student_id":4,"present":0]
  [["student_id": 2, "present": 0],
   ["student_id": 49, "present": 0], 
   ["present": 0, "student_id": 29],
   ["student_id": 12, "present": 0],
   ["present": 0, "student_id": 4]]

如何实现这一点

您不能在存储相同密钥“student\u id”的地方使用字典。 字典的Id应该是唯一的。 而不是这个,你可以这样储存

var students = ["student_id":2,"present":0]
var students =[2:0]
students[49] = 0
students[29] = 0
students[12]= 0
students[4]= 0

不能在Swift中创建具有相同关键字名称的词典。如果您尝试这样做,则每次都将替换
学生id
当前值

您可以创建字典记录数组,如下所示

var students: [[String : Int]] = [["student_id": 2, "present": 0]]

let ids = [49,29,12,4]
let anotherRecords = ids.map { ["student_id": $0, "present": 0] }
students.append(contentsOf: anotherRecords)

print(students)
你们得到了这样的输出

[49,29,12,4]

var students =["student_id":2,"present":0,"student_id":49,"present":0,"student_id":29,"present":0,"student_id":12,"present":0,"student_id":4,"present":0]
  [["student_id": 2, "present": 0],
   ["student_id": 49, "present": 0], 
   ["present": 0, "student_id": 29],
   ["student_id": 12, "present": 0],
   ["present": 0, "student_id": 4]]

要将值附加到字典中,首先需要创建一个字典,如下所示 然后在其中附加值

var students = [["student_id":2,"present":0]]
students.append(["student_id":49,"present":0])