在foreach循环中选择特定项目?

时间:2014-09-16 07:03:57

标签: java loops foreach jsoup

我有这个代码来获取一些标签:

HttpResponse response = client.execute(method);
InputStream stream = response.getEntity().getContent();
String result = inputestreamToString(stream);
String html = result;
Document doc = Jsoup.parse(html);
Elements mElements = doc.select("div[class^=news-item]");

for (Element e: mElements) 
{
    title = e.text();
    jobtitle.add(title);

    StructNote note = new StructNote();
    note.title = title;
    Notes.add(note);

}

我有100个div,通过这个循环我可以得到所有这些。但我想只得到20件物品。

3 个答案:

答案 0 :(得分:1)

您还可以使用Iterables#limit中的Guava

for (Element e : Iterables.limit(mElements, 20)) 
{
    ....
}

答案 1 :(得分:1)

JSOUP - Elements API为您提供了从元素中提取子列表的子列表功能。

您可以使用

 List<Element> subLists = mElements.subList(0,20)

答案 2 :(得分:0)

如果您想选择前20个元素,那么您可以:

List<String> subItems = new ArrayList<String>(jobtitle.subList(0, 19));
List<StructNote> subItems = new ArrayList<StructNote>(Notes.subList(0, 19));