2つの配列を比較し、新しいオブジェクトをいつ作成するかを知るために、ここにある手順を実行しようとしていますが、それがどのように機能するかがわかりません。
最終的に2つのソートされた配列になります。1つはフェッチ要求に渡された従業員IDを持ち、もう1つはそれらに一致する管理対象オブジェクトを持ちます。それらを処理するには、次の手順に従ってソートされたリストをたどります。
Get the next ID and Employee. If the ID doesn't match the Employee ID, create a new Employee for that ID.
Get the next Employee: if the IDs match, move to the next ID and Employee.
渡すIDの数に関係なく、1回のフェッチのみを実行し、残りは結果セットをたどるだけです。
基本的に何が起こっているのかというと、外部ソースからのオブジェクトIDの配列があり、クライアントシステムにはこれらのIDで表されるオブジェクトのサブセットしかありません。すでに持っているオブジェクトを把握する必要があります。持っていない場合は、1つずつ作成します。
これがどのように機能するのかわかりません。これをコードに変換するのに問題があります:
for (int i =0;i<ids.count;i++) {
currentId = [ids objectAtIndex:i];
currentObject = [objects objectAtIndex:i];
if(currentObject.id != currentId) {
//create new object
}
//"get the next employee"
//uh what?
nextEmployee = [objects objectAtIndex:i+1]; //?
if(nextEmployee.id == currentId) {
//"move on to the next id"
continue;
}
}
それがどのように機能するかわかりませんか?私は何が欠けていますか?