2015-04-14 84 views
-2

目前我能够打印所有这些文件,但是我想查找最大并仅打印该值。从webelement列表中找到最大值

谁能帮我建立这个代码在硒的webdriver & 的Java

这里是我的代码:

List <WebElement> Rating = oBrowser.findElements(By.xpath("//span[contains(@class, 'rating-out-of-five')]"); 
try{ 
    for(WebElement starRating:Rating) 
    { 
    System.out.println(starRating.getText()); 
    } 
catch(Exception e){ 
    System.out.println("Rating not found"); 
} 
+0

查找'Integer.parseInt()' – Kon

回答

0

你的循环之前,引入将持有像这样的最大值的变量;

int max = Integer.parseInt(Rating.get(0).getText()); 

注意这样做是错误的做一些像int max = 0;(考虑一个负值列表)。

然后,在您的for循环中,您可以检查当前值是否大于最大值,如此;

int tmp = Integer.parseInt(starRating.getText()); 
if (tmp > max) max = tmp; 

当然,你可以制作一个oneliner,但它更具可读性。

现在,你的循环后,最高将持有列表的最大价值,所以你可以简单地打印

System.out.println(max); 

顺便说一句,我不知道你WebElement类的方法,但如果它有一个方法,如getValue返回一个int它会使事情变得更简单。