- java.lang.Object
-
- javax.swing.text.ElementIterator
-
- すべての実装されたインタフェース:
Cloneable
public class ElementIterator extends Object implements Cloneable
ElementIteratorは、その名前が示すとおり、要素ツリーを反復処理します。 コンストラクタを呼び出すには、ドキュメントまたは要素を引数として使用します。 ドキュメントを引数としてコンストラクタを呼び出すと、繰返しのルートはdocument.getDefaultRootElement()の戻り値になります。 深さ優先方式で繰り返します。 境界条件の処理法は次のとおりです。a) first()またはcurrent()より先にnext()が呼び出された場合は、ルートを返します。b) next()はnullを返してリストの末尾を示します。c) 現在の要素がルートの場合、またはnext()がnullを返した場合、previous()はnullを返します。 ElementIteratorは要素ツリーをロックしません。 つまり、それはどのような変更も追跡しません。 このクラスのユーザーが、要素の反復処理で変更が生じていないことを確認する必要があります。 次に、簡単な使用例を示します。public void iterate() { ElementIterator it = new ElementIterator(root); Element elem; while (true) { if ((elem = next()) != null) { // process element System.out.println("elem: " + elem.getName()); } else { break; } } }
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 ElementIterator(Document document)
新しいElementIteratorを作成します。ElementIterator(Element root)
新しいElementIteratorを作成します。
-
-
-
メソッドの詳細
-
clone
public Object clone()
ElementIteratorを複製します。
-
first
public Element first()
先頭の要素を取得します。- 戻り値:
- Element。
-
depth
public int depth()
要素ツリーの現在の深さを取得します。- 戻り値:
- 深さ。
-
current
public Element current()
現在のElementを取得します。- 戻り値:
- スタック上の要素。ルート要素が
null
の場合はnull
-
next
public Element next()
次のElementを取得します。 次の要素を見つけるには深さ優先探索が使われます。- 戻り値:
- 次の要素。リスト末尾では
null
。
-
previous
public Element previous()
直前のElementを取得します。 現在の要素が最後の要素かnullの場合は、nullが返されます。- 戻り値:
- 利用できる場合は前の
Element
-
-