Swift3 如何在swift 3中查找和替换数组字典值
我的数组中有一个字典,我想在其中查找并替换字典h Attention=“”和Attention=“A”并替换为Attention=“P” 我用的是:Swift3 如何在swift 3中查找和替换数组字典值,swift3,Swift3,我的数组中有一个字典,我想在其中查找并替换字典h Attention=“”和Attention=“A”并替换为Attention=“P” 我用的是: checkedArray = [[String : AnyObject]]() let index = find(checkedArray) { $0["attendance"] == "P" } if let index = index { checkedArray[index] = newDictionar
checkedArray = [[String : AnyObject]]()
let index = find(checkedArray) { $0["attendance"] == "P" }
if let index = index {
checkedArray[index] = newDictionary
}
// Do any additional setup after loading the view.
}
func find<C: CollectionType>(collection: C, predicate: (C.Generator.Element) -> Bool) -> C.Index? {
for index in collection.startIndex ..< collection.endIndex {
if predicate(collection[index]) {
return index
}
}
return nil
}
[
{"studentID":"12","name":"panky","roll":"","attendance":"P"},
{"studentID":"14","name":"a","roll":"","attendance":""},
{"studentID":"4","name":"akshay","roll":"1","attendance":"E"},
{"studentID":"6","name":"anki","roll":"11","attendance":"P"},
{"studentID":"1","name":"mohit","roll":"2","attendance":"M"},
{"studentID":"5","name":"yogi","roll":"22","attendance":"L"},
{"studentID":"3","name":"Neha","roll":"3","attendance":"A"}
]
checkedArray=[[String:AnyObject]]()
让index=find(checkedArray){$0[“考勤”]=“P”}
如果let index=index{
checkedArray[索引]=新字典
}
//加载视图后执行任何其他设置。
}
func find(集合:C,谓词:(C.Generator.Element)->Bool)->C.Index?{
对于collection.startIndex中的索引..
Tip:制作结构/类模型并使用这些对象及其属性,而不是使用字典。
let dic: [[String : Any]] = [
["studentID":"12","name":"panky","roll":"","attendance":"P"],
["studentID":"14","name":"a","roll":"","attendance":""],
["studentID":"4","name":"akshay","roll":"1","attendance":"E"],
["studentID":"6","name":"anki","roll":"11","attendance":"P"],
["studentID":"1","name":"mohit","roll":"2","attendance":"M"],
["studentID":"5","name":"yogi","roll":"22","attendance":"L"],
["studentID":"3","name":"Neha","roll":"3","attendance":"A"]
]
let result : [Any] = dic.map { dictionary in
var dict = dictionary
if let attendance = dict["attendance"] as? String, attendance == "" || attendance == "A" {
dict["attendance"] = "P"
}
return dict
}