How can I merge two (first and second) arrays of structures based on a key in structure (name). While merging I need to replace the existing element of first array with second array element, if any value changed in that element.
struct Example: Codable {
var name: String
var dob: String
var address: String
}
var first: [Example] = []
var second: [Example] = []
first.append(Example(name: "Arun", dob: "01-01-1994", address: "Tirupati"))
first.append(Example(name: "Balaji", dob: "01-01-1994", address: "Tirupati"))
first.append(Example(name: "Prasanth", dob: "01-01-1994", address: "Tirupati"))
first.append(Example(name: "Satish", dob: "01-01-1994", address: "Tirupati"))
second.append(Example(name: "Arun", dob: "01-01-1994", address: "Kadapa"))
second.append(Example(name: "Balaji", dob: "01-01-1994", address: "Tirupati"))
second.append(Example(name: "Prasanth", dob: "01-01-1994", address: "Tirupati"))
second.append(Example(name: "Harsha", dob: "01-01-1994", address: "Tirupati"))
/* let merged: [Example] = merge(first, second, with: name)
'merged' must contain four elements Arun, Balaji, Prasanth, Satish, Harsha,
but Arun details are from 'second', because 'address' changed in second. So, I need element from 'second'*/
Please let me know the easy way, Thanks.