2012-10-03 2 views
1
 list2= doc.select("div.idContent > p").get(k); 

У меня есть много div с idcontent как id в HTML. Я хочу знать значение «k». Я соблюл K = 0; K < 10; K ++как найти значение n в выборе

чем я вижу исключение:

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 как я могу найти значение к? и получить езду от этого исключения?

+0

да. но мой вопрос заключается в использовании select и all .. как я могу найти значение N .. –

ответ

2

doc.select возвращает Elements объект, который осуществляет 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> расширяет Iterable<Element>, вы можете использовать расширенный цикл вместо этого, который легче читать:

for (Element list2: doc.select("div.idContent > p") { 
    // process list2 
}