模块 java.xml

接口 NodeIterator


public interface NodeIterator
NodeIterators 用于遍历一组节点,例如 NodeList 中的节点集、由特定 Node 管理的文档子树、查询结果或任何其他节点集。要迭代的节点集由 NodeIterator 的实现确定。 DOM 级别 2 为文档子树的文档顺序遍历指定了单个NodeIterator实现。这些 NodeIterators 的实例是通过调用 DocumentTraversal .createNodeIterator() 创建的。

另见 文档对象模型 (DOM) 级别 2 遍历和范围规范

自从:
9、DOM 2级
  • 方法总结

    修饰符和类型
    方法
    描述
    void
    NodeIterator 从它迭代的集合中分离出来,释放所有计算资源并将 NodeIterator 置于无效状态。
    boolean
    此标志的值确定实体引用节点的子节点是否对 NodeIterator 可见。
    NodeFilter 用于筛选节点。
    NodeIterator 的根节点,在创建时指定。
    int
    此属性确定哪些节点类型通过 NodeIterator 呈现。
    返回集合中的下一个节点并推进集合中NodeIterator的位置。
    返回集合中的前一个节点并将NodeIterator在集合中的位置向后移动。
  • 方法详情

    • getRoot

      Node  getRoot()
      NodeIterator 的根节点,在创建时指定。
    • getWhatToShow

      int getWhatToShow()
      此属性确定哪些节点类型通过 NodeIterator 呈现。可用的常量集在 NodeFilter 接口中定义。 whatToShow 不接受的节点将被跳过,但仍可能考虑其子节点。请注意,此跳过优先于过滤器(如果有)。
    • getFilter

      NodeFilter  getFilter()
      NodeFilter 用于筛选节点。
    • getExpandEntityReferences

      boolean getExpandEntityReferences()
      此标志的值确定实体引用节点的子节点是否对 NodeIterator 可见。如果为假,这些孩子和他们的后代将被拒绝。请注意,此拒绝优先于 whatToShow 和过滤器。另请注意,这是目前NodeIterators 可能拒绝完整子树而不是跳过单个节点的唯一情况。

      要生成扩展了实体引用且不公开实体引用节点本身的文档视图,请使用 whatToShow 标志隐藏实体引用节点,并在创建 NodeIterator 时将 expandEntityReferences 设置为 true。要生成具有实体引用节点但没有实体扩展的文档视图,请使用 whatToShow 标志来显示实体引用节点并将 expandEntityReferences 设置为 false。
    • nextNode

      Node  nextNode() throws DOMException
      返回集合中的下一个节点并推进集合中NodeIterator的位置。创建 NodeIterator 后,对 nextNode() 的第一次调用返回集合中的第一个节点。
      返回:
      正在迭代的集合中的下一个 Node,如果该集合中没有更多成员,则为 null
      抛出:
      DOMException - INVALID_STATE_ERR:如果在调用 detach 方法后调用此方法,则引发。
    • previousNode

      Node  previousNode() throws DOMException
      返回集合中的前一个节点并将NodeIterator在集合中的位置向后移动。
      返回:
      正在迭代的集合中的前一个 Node,如果该集合中没有更多成员,则为 null
      抛出:
      DOMException - INVALID_STATE_ERR:如果在调用 detach 方法后调用此方法,则引发。
    • detach

      void detach()
      NodeIterator 从它迭代的集合中分离出来,释放所有计算资源并将 NodeIterator 置于无效状态。在调用 detach 之后,调用 nextNodepreviousNode 将引发异常 INVALID_STATE_ERR。