welcome: please sign in
location: "オブジェクトをつなぐメソッド"の差分
4と5のリビジョン間の差分
2010-11-22 07:10:31時点のリビジョン4
サイズ: 1326
編集者: masahiko
コメント:
2010-11-22 07:11:35時点のリビジョン5
サイズ: 1332
編集者: masahiko
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 32: 行 32:
 }}}

オブジェクトをつなぐメソッド

オブジェクトを沢山つなげることができました。

うまい方法を使うと、新しいオブジェクトを先頭に追加する方が楽にできます。


例1

変数aが、いくつかつながったオブジェクトを参照しており、 変数tempが1つのオブジェクトを参照している場合です。

  • chain30.png

赤矢印でしめしたようにつなぎ変えることで、1つのオブジェクトを追加できます。

  • chain31.png

  • chain32.png

この処理はこのように書けます。

  • temp.next = a;
    a = temp;


例2

赤矢印でしめした位置に追加する場合。

  • chain33.png

追加したい位置の直前にあるオブジェクトを参照できなければなりません。

変数pがその位置を指しているとします。

  • chain34.png

pが指しているオブジェクトの直後に、 tempが示している1つのオブジェクトを追加する処理はこのように書けます。

  • temp.next = p.next;
    p.next = temp;


  • chain35.png

  • chain36.png

  • chain37.png

オブジェクトをつなぐメソッド (最終更新日時 2010-11-24 00:58:06 更新者 masahiko)