从webelement列表中找到最大值

时间:2015-04-14 15:04:38

标签: java selenium-webdriver compare largenumber

目前我可以打印所有这些,但我想找出最大的,只打印那个值。

任何人都可以帮助我在 Selenium Webdriver &中构建代码。 爪哇

这是我的代码:

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");
 }

1 个答案:

答案 0 :(得分: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,但这更具可读性。

现在,在循环之后,max将保持列表的最大值,因此您只需打印

即可
System.out.println(max);

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