jsoup многоэлементный выход - PullRequest
1 голос
/ 22 марта 2012

привет, ребята, я пытаюсь напечатать вывод двухэлементных данных одновременно

Document document2 = Jsoup.parse(webPage2);
Document document22 = Jsoup.parse(webPage2);
Elements links2 = document2.select("a.yschttl");
Elements links22 = document22.select("div.abstr");

мы можем включить как a.yschttl, так и div.abstr или ...

for (Element link2 : links2) {
out.println(link2);
}

Можем ли мы включить две команды say2 и links22 в один цикл for ... или как этого добиться ...

Ответы [ 2 ]

1 голос
/ 22 марта 2012

Вы можете сделать что-то вроде:

for (int i = 0; i < links2.size(); i++) {
   out.println(links2.get(i));
   out.println(links22.get(i));
}

Но в этом случае вы получите IndexOutOfBoundsException, если размер links22 превышает размер links2.

Что делатьхочешь добиться?

0 голосов
/ 22 марта 2012

Если вы просто пытаетесь выбрать оба одновременно, вы можете сделать что-то вроде этого:

for (Element link : document.select("a.yschttl, div.abstr") {
    out.println(link);
}

Если вы пытаетесь сделать два выбора и вывести эти значения в тандеме, вам придется сделать что-то, как предлагает @vacuum, но следя за длиной списков.

Примечание: вам не нужно анализировать документ дважды, чтобы сделать два выбора. Вы можете разобрать один раз и выбрать дважды.

...