1
        list2= doc.select("div.idContent > p").get(k);

HTML の id として idcontent を持つ div がたくさんあります。「k」の値が知りたいです。私はK=0;k<10;k++を維持しました

私が見ているよりも例外:

Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 9, Size: 9
    at java.util.ArrayList.rangeCheck(Unknown Source)
    at java.util.ArrayList.get(Unknown Source)

Jsoupを使用してkの値を見つけるにはどうすればよいですか? この例外に乗りますか?

4

1 に答える 1

2

doc.selectElementsを実装するオブジェクトを返しますCollection<Element>size()これは、を呼び出しての範囲を決定できることを意味しますk

Elements elements = doc.select("div.idContent > p");
for (int k = 0; k < elements.size(); k++) {
    Element list2 = elements.get(k);
    // process list2
}

ただし、Collection<Element>extendsなのでIterable<Element>、代わりに拡張forループを使用できます。これは読みやすくなっています。

for (Element list2: doc.select("div.idContent > p") {
   // process list2
}
于 2012-10-03T07:41:08.823 に答える