会计考友 发表于 2012-8-4 12:44:44

Java认证辅导之关于Java语言的XPathAPI(3)

Java认证辅导之关于Java语言的XPathAPI(3)
直接求值
如果 XPath 表达式只使用一次,可以跳过编译步骤直接对XPath 对象调用 evaluate() 方法。但是,如果同一个表达式要重复使用多次,编译可能更快一些。
最后,计算 XPath 表达式得到结果。表达式是针对特定的上下文节点计算的,在这个例子中是整个文档。还必须指定返回类型。这里要求返回一个节点集:

Object result = expr.evaluate(doc, XPathConstants.NODESET); 可以将结果强制转化成 DOM NodeList,然后遍历列表得到所有的标题:

NodeList nodes = (NodeList) result; for (int i = 0; i < nodes.getLength(); i++) { System.out.println(nodes.item(i).getNodeValue()); } 清单 4 把上述片段组合到了一个程序中。还要注意,这些方法可能抛出一些检查异常,这些异常必须在 throws 子句中声明,但是我在上面把它们掩盖起来了:
页: [1]
查看完整版本: Java认证辅导之关于Java语言的XPathAPI(3)