- 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; } } } 
- 
- 
メソッドの詳細- 
clonepublic Object clone() ElementIteratorを複製します。
 - 
firstpublic Element first() 先頭の要素を取得します。- 戻り値:
- Element。
 
 - 
depthpublic int depth() 要素ツリーの現在の深さを取得します。- 戻り値:
- 深さ。
 
 - 
currentpublic Element current() 現在のElementを取得します。- 戻り値:
- スタック上の要素。ルート要素がnullの場合はnull
 
 - 
nextpublic Element next() 次のElementを取得します。 次の要素を見つけるには深さ優先探索が使われます。- 戻り値:
- 次の要素。リスト末尾ではnull。
 
 - 
previouspublic Element previous() 直前のElementを取得します。 現在の要素が最後の要素かnullの場合は、nullが返されます。- 戻り値:
- 利用できる場合は前のElement
 
 
- 
 
-