DOMが迂遠4
Nodeを返す関数で「結果が空の場合」に何を返せばいいのかをかなり悩んでいたのだが、結局DocumentFragmentが適当なようだ。Elementとかだと「有効な名前」を要求されるので問題がある。その点、DocumentFragmentなら名前とかがないのでちょうどいい。
NodeListは最初配列を使って普通に書いてみたが、JAVAの配列はサイズが固定されているので使いにくく、java.util.ArrayListを使って書き直してみた。*1 *2
こんな感じ
public class ResultNodeList implements NodeList{ private ArrayListlist; public ResultNodeList() { this.list = new ArrayList (); } public int getLength(){ return this.list.size(); } public Node item(int index){ return this.list.get(index); } public ResultNodeList append(Node node){ this.list.add(node); return this; } }