welcome: please sign in
location: "線形リストの操作"の差分
7と8のリビジョン間の差分
2010-11-29 01:08:02時点のリビジョン7
サイズ: 872
編集者: masahiko
コメント:
2010-11-29 01:20:12時点のリビジョン8
サイズ: 1647
編集者: masahiko
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 28: 行 28:
 . {{attachment:chain38.png}}  . {{attachment:chain52.png}}
行 30: 行 30:
=== 追加、削除のメソッド ===
上で示した位置より後ろに追加したり、
後ろにあるインスタンスを削除する処理は、メソッドとして記述することができます。

ところが、一番先頭にインスタンスを追加したり、
一番先頭のインスタンスを削除するためには、
変数aの値を変更しなければならないため、メソッドで行うことはできません。

メソッドで修正可能な範囲を青で示します。
行 31: 行 40:
線形リストの操作をするメソッドについて検討します。
先頭の1つのインスタンスを無視して(別のことに利用して)、
2つ目以降だけを利用するようにすれば、
すべての処理をメソッドで行うことができます。

 ||機関車||客車||客車||客車||客車||

 ||表紙||ページ||ページ||ページ||ページ||

線形リストの操作

Chainクラスのインスタンスをつなぐことで、線形リストができました。

  • chain1.png

  • chain2.png

  • chain42.png


追加のメソッド

変数aからいくつかのChainがつながっているときに

  • a.add(new Chain());

を行うと、図の位置に新しいインスタンスを追加することができました。

  • chain50.png


削除のメソッド

変数aからいくつかのChainがつながっているときに

  • a.del( );

を行うと、図の位置のインスタンスを除くことができました。

  • chain52.png


追加、削除のメソッド

上で示した位置より後ろに追加したり、 後ろにあるインスタンスを削除する処理は、メソッドとして記述することができます。

ところが、一番先頭にインスタンスを追加したり、 一番先頭のインスタンスを削除するためには、 変数aの値を変更しなければならないため、メソッドで行うことはできません。

メソッドで修正可能な範囲を青で示します。

  • chain51.png

先頭の1つのインスタンスを無視して(別のことに利用して)、 2つ目以降だけを利用するようにすれば、 すべての処理をメソッドで行うことができます。

  • 機関車

    客車

    客車

    客車

    客車

    表紙

    ページ

    ページ

    ページ

    ページ

線形リストの操作 (最終更新日時 2010-12-01 00:32:32 更新者 masahiko)