gpt4 book ai didi

java - 如何增加catch block 中的值?

转载 作者:行者123 更新时间:2023-12-02 04:58:58 25 4
gpt4 key购买 nike

我是编程新手。这是我的场景。我正在测试一个网站。如果未找到某个链接,则应转到 catch block 并移至下一步。如果在 k 次循环中失败,则应该执行 k++;不是我++;或 j++; 。如果在 j 循环中失败,则应增加 j 值而不是 i 值或 k 值。如何做到这一点?

public static void main(String[] args) throws NoSuchElementException {
int i = 0, j = 0, k = 0;
String links[] = new String[10];
links[0] = "link1";
links[1] = "link2";
links[2] = "link3";
links[3] = "link4";
WebDriver driver = new FirefoxDriver();

while (i < 4) {
try {
driver.get(links[i]);
driver.findElement(By.xpath("//div[contains(@id,'image')]")).click();
while (j < 5) {
driver.findElement(By.xpath("//div[contains(@id,'header')]")).click();
while (k < 8) {
driver.findElement(By.xpath("//div[contains(@id,'title')]")).click();
k++;
}
j++;
}
i++;
} catch (NoSuchElementException e) {
System.out.println(e);
// How to increment the value of i or j or k
}
}
}

最佳答案

在代码顶部,有:

char currentLoop = 'i';

然后在每个 while 循环声明之后立即设置相应的值,如下所示:

while (i < 4) {
currentLoop = 'i';
...

while (j < 5) {
currentLoop = 'j';
...

while (k < 8) {
currentLoop = 'k';
...
}
}
}

然后在 catch 中执行:

if (currentLoop == 'i') {
i++;
}else if (currentLoop == 'j') {
j++;
}else if (currentLoop == 'k') {
k++;
}

关于java - 如何增加catch block 中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28480414/

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