日期:2014-05-20  浏览次数:20667 次

Dom4j问题
问题是这样的,我把Elemnt对象存入到List中,想判断List中是否有name为Id 的Element对象,即是否有<Id/>,自己想的是:
Element e = DocumentHelper.createElement("Id");
ls.contains(e)
但是好像不能正确判断呀。新手求指教。
------解决方案--------------------
循环遍历list中每一个元素,然后每一个元素的getName,然后比较是不是id撒
public static void main(String[] args) throws Exception {
List<Element> list = new ArrayList<Element>();
Element e1 = DocumentHelper.createElement("id");
Element e2 = DocumentHelper.createElement("name");
Element e3 = DocumentHelper.createElement("age");
list.add(e1);
list.add(e2);
list.add(e3);
boolean isId = false;
for (Element e : list) {
if (e.getName().equals("id")) {
isId = true;
}
}
if (isId) {
System.out.println("have");
} else {
System.out.println("false");
}
}
------解决方案--------------------
contians方法中最后还是调用的if (o.equals(elementData[i]))equals方法,你得看Element的equals方法是怎么比较的撒。。。