我在这里所做的是获取下表的内容并将其存储在名为tableElems
的列表中
0 1 2 3 4 5 6 7 8
9 10 11 12 13 14 15 16 17
18 19 20 21 22 23 24 25 26
27 28 29 30 31 32 33 34 35
List<WebElement> tableElems = chrome.findElements(By.tagName("td"));
从该表中,我想以从第4个元素(表中的#3)开始的图案进行打印,并且要打印3个元素,然后跳过下一个6,打印下一个3,然后跳过下一个6,依此类推。 。
所以我的预期输出是
3 4 5 12 13 14 21 22 23 30 31 32
我最初的尝试以
for (int i = 3; i<tableElems.size(); i++) {
if(i % 3 == 0) { System.out.println(tableElems.get(i).getText()); }
else if(i % 4 == 0) { System.out.println(tableElems.get(i).getText()); }
else if(i % 5 == 0) { System.out.println(tableElems.get(i).getText()); }
}
显然这是错误的,因为我的
% 3
将打印第9个元素,% 4
将打印第16个元素,依此类推。我在解决这个问题时遇到了麻烦,因此请您向我提出正确的方向!
最佳答案
尝试这个:
for (int i = 3; i<tableElems.size(); i++) {
if (((i / 3) % 3) == 1) { System.out.println(tableElems.get(i).getText()); }
}
考虑将其分为9个组,然后将9个组进一步分为3个组。在第二个3组(即3-5、12-14)上,它将显示。