次のコードは、ネストされた配列内に要素があるかどうかを検出するという点でうまく機能します。そのような要素が存在しない場合、コードはそれを挿入します。
既存の要素がすでに存在する場合は削除して、更新されたバージョンを挿入できるようにする方法を見つけるのに苦労しています。
おそらく、最初に削除せずに既存の要素を更新するより良い方法がありますか?
if insertSolution.contains(where: { $0.resourceName == name }) {
//remove $0
//insert new resource
print("Already inserted. Update needed!")
} else {
insertSolution.append(solution);
print("New solution. Insert needed!");
}
既存の要素のインデックスを判別し、存在する場合はその要素を更新できます。存在しない場合は、以下を追加します。
if let idx = insertSolution.firstIndex(where: { $0.resourceName == name }) {
// Update existing element:
insertSolution[idx] = ...
} else {
// Append new element:
insertSolution.append(...);
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加