关于node类
来源:3-8 XPath实验室
慕无忌8417539
2020-04-22 17:28:11
课程里说node节点是element和Attribute的父类,因为后面有Attribute,所以用node,可是我看下面取属性的时候,也是通过element.attributeValue("id")获取的,根本没用到Attribute啊,所以这里不用node用Element是不是也可以?
for(Node node:nodes) {
Element element=(Element)node;
System.out.println(element.attributeValue("id"));
System.out.println(element.elementText("exam-form"));
1回答
同学你好,
1、由于selectNodes()方法返回的是List<Node>对象,所以我们只能用List<Node>类型的变量接收,遍历集合的时候将Node对象强制转换为Element对象。
2、在for循环中将Node对象强制转换为Element对象是因为使用XPath获取的是节点。
如果选择所有的<employee>元素的no属性,XPath获取的是属性,则会用到Attribute对象。
如:
Element指的是节点,Attribute是某个元素属性的值。用的场景不同。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
相似问题