welcome: please sign in

ページのコンテンツをアップロード

下記のページ名のコンテンツをアップロードすることができます。 もしページ名を変更すれば、別のページのコンテンツをアップロードすることもできます。 ページ名が空の場合、ファイル名からページ名を決定します。

ページコンテンツを格納したファイル
ページ名
コメント

location: オブジェクトを除くメソッド

オブジェクトを除くメソッド

オブジェクトを除く場合でも、先頭を処理するほうが楽です。


例1

変数aがいくつかつながったオブジェクトを参照しており、 その先頭の(赤いXで示した)1つのオブジェクトを除く場合です。

赤矢印でしめしたようにつなぎ変えることで、 並びから1つのオブジェクトを除くことができます。

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

処理の後では、 変数aからたどっていくと、赤いXで示したオブジェクトは参照できません。

赤いXで示したオブジェクトは、すぐに消えてなくなるのではありません。

どこからも参照されていないオブジェクトは、 ごみ集め(ガーベッジコレクション)が行われた時点で無くなります。


例2

途中を取り除く場合。

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

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

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


オブジェクトを除くメソッド

例2と同じ処理をするメソッドを作ります。

このような形で呼び出されるものとします。

引数は必要なく、メソッドはこのような形になります。

mainメソッドから上のように呼び出された場合は

対応付けられて本体が実行されるので、 例2のpがthisとして処理を記述すればよい。