- java.lang.Object
-
- javax.swing.text.ElementIterator
-
- All Implemented Interfaces:
-
Cloneable
public class ElementIterator extends Object implements Cloneable
ElementIterator,顾名思义,遍历Element树。 可以使用Document或Element作为参数来调用构造函数。 如果使用Document作为参数调用构造函数,则迭代的根是document.getDefaultRootElement()的返回值。 迭代以深度优先的方式发生。 关于边界条件如何处理:a)如果在first()或current()之前调用next(),则返回根。 b)next()返回null表示列表的结尾。 c)previous()当当前元素为根或next()返回null时返回null。 ElementIterator没有锁定元素树。 这意味着它不会跟踪任何更改。 这个类的用户有责任确保在元素迭代期间不发生变化。 简单的使用示例:public void iterate(){ElementIterator it = new ElementIterator(root); 元素元素 while(true){if((elem = next())!= null){// process element System.out.println(“elem:”+ elem.getName()); } else {break; }}}
-
-
构造方法摘要
构造方法 Constructor 描述 ElementIterator(Document document)
创建一个新的ElementIterator。ElementIterator(Element root)
创建一个新的ElementIterator。
-
-
-
方法详细信息
-
clone
public Object clone()
克隆ElementIterator。
-
first
public Element first()
获取第一个元素- 结果
- 元素
-
depth
public int depth()
获取元素树的当前深度。- 结果
- 深度。
-
current
public Element current()
获取当前元素。- 结果
-
元素在堆栈顶部或
null
如果根元素是null
-
next
public Element next()
获取下一个元素。 用于定位下一个元素的策略是深度优先搜索。- 结果
-
下一个元素或
null
在列表的末尾。
-
previous
public Element previous()
获取上一个元素。 然而,如果当前元素是最后一个元素,或者当前元素为null,则返回null。- 结果
-
以前的
Element
如果有)
-
-