複数同時移動の処理このアーカイブは同期化されません。日記が更新されても、このアーカイブには反映されません。次は上へ・下へボタンの処理だ。削除のように簡単にはいかない。したアルゴリズムとも言えるかも。昨日と同じように、インデックスのずれにも注意が必要だ。上に動かす場合を例として、方針を練ってみよう。状態をそのまま保つように移動させることにする。位置関係を保つため、変化させない。入れ替えないことにする。いう風に設計しておけば、以下のような仮定ができる。チェックされたルールはすべて移動するか、すべて移動しないかのどちらかである。下が選択された場合、下への移動はできない。上が選択された場合、上への移動はできない。すると実装に関して少し楽ができるのだ。可能であれば、すべてのインデックスに対して、その上(または下)の要素と入れ替えるという処理となる。この入れ替えは、削除の時と同じく、順序が大事だ。誤って選択された要素同士を入れ替える危険性がある。⇒これは、昇順に並べ替えることで対処しよう。同じインデックスが複数含まれると困ったことになる。そのため、選択された番号が一意であるか調べる必要がある。インタフェースは、要素の重複を許さないからだ。この方針に従って、上への移動を実装してみよう。使うには、要素をオブジェクトにする必要がある。地道に各要素を列挙して格納する。