Chainクラスのインスタンスをつなぐことで、線形リストができました。
変数aからいくつかのChainがつながっているときに
a.add(new Chain());
を行うと、図の位置に新しいインスタンスを追加することができました。
変数aからいくつかのChainがつながっているときに
a.del();
を行うと、図の位置のインスタンスを除くことができました。
上で示した位置より後ろに追加したり、 後ろにあるインスタンスを削除する処理は、メソッドとして記述することができます。
ところが、一番先頭にインスタンスを追加したり、 一番先頭のインスタンスを削除するためには、 変数aの値を変更しなければならないため、メソッドで行うことはできません。
メソッドで修正可能な範囲を青で示します。
先頭の1つのインスタンスを無視して(別のことに利用して)、 2つ目以降だけを利用するようにすれば、 すべての処理をメソッドで行うことができます。
先頭だけ特別で、2つめ以降に同じものがつながっている例
機関車 |
客車 |
客車 |
客車 |
客車 |
表紙 |
ページ |
ページ |
ページ |
ページ |
次の3つのメソッドは青で囲んだ範囲の処理をするのに使えます。