gpt4 book ai didi

java - Java 中的递归问题。方法返回空列表

转载 作者:行者123 更新时间:2023-11-29 08:29:26 25 4
gpt4 key购买 nike

我正在尝试从我的方法返回一个数组列表,该方法实际上使用递归来填充该列表。但是该方法总是返回一个空列表。我已经在 Debug模式下检查了列表是否在第二次执行时被填充,但方法仍然返回 0 元素。

下面是我的方法的代码。

private static List<WebElement> checkMonth(WebDriver driver) {
List<WebElement> months = driver.findElements(By
.xpath("//div[@class='DayPicker-Caption']"));
List<WebElement> daysList = new ArrayList<WebElement>();
for (WebElement monthEl : months) {
if (monthEl.getText().contains(month)) {
daysList.addAll(driver.findElements(By
.xpath("//div[contains(text(),'" + month
+ "')]/..//div[@aria-disabled='false']/div")));
}
}

if (daysList.size() == 0) {
driver.findElement(
By.xpath("//span[@class='DayPicker-NavButton DayPicker-NavButton--next']"))
.click();
checkMonth(driver);
}

return daysList;
}

最佳答案

你正在进行递归调用

checkMonth(driver)

但忽略该调用返回的 List

也许您想将该调用的输出添加到您的方法(daysList 列表)返回的总体输出中:

daysList.addAll(checkMonth(driver));

关于java - Java 中的递归问题。方法返回空列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49509239/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com