2010-08-29 81 views
2

我們正在研究如何解析Java中的DOM樹。快速的問題,在我的教授給我們的下面的部分代碼中,他創建了一個ArrayList並將Document對象添加到它。我只使用ArrayList將項目添加到列表中,如String,int等。在這種情況下,當他將Document對象添加到它時,Java是否會自動將每個節點放入列表中?用Java解析XML,漫步DOM樹

 DocumentBuilder docBuilder = 
      DocumentBuilderFactory.newInstance().newDocumentBuilder(); 

     Document doc = docBuilder.parse(f); 

     List<Node> nodeList = new ArrayList<Node>(); 
     nodeList.add(doc); 

     while(nodeList.size() > 0) 

謝謝!

回答

1

DocumentNode一個亞型,因此增加了DocumentList<Node>只是增加了一個對象,文檔的子節點。

0

迭代遍歷Document的正確方法是以root開始並遞歸訪問每個子節點。有很多方法可以做到這一點:深度優先,廣度優先等

我沒有看到添加文件到列表中的值,除非你同時創建多個文件。