1
필자는 반복기를 사용하여 스캔해야하는 요소 목록을 가지고 원하는 요소를 클릭합니다. 내 코드에서 반복자를 사용하여 현재 요소를 클릭하는 방법
List <WebElement> lt = driver.findElements(By.tagName("strong"));
\t \t Iterator <WebElement> it= lt.iterator();
\t \t while(it.hasNext())
\t \t {
\t \t \t if(it.next().getText().equals(cat))
\t \t \t {
\t \t \t \t it.next().click();
\t \t \t \t break;
\t \t \t }
\t \t }
it.next().click();
가 발생했을 때 나는 현재를 클릭 어떻게, 다음 요소를 선택 if 루프가 가리키는 요소?
그건 대안입니다, 그러나 실제로 "iterator_를 사용하여 현재 요소를 어떻게 클릭합니까?"라는 질문에 대답하지 않습니다. – AxelH
@AxelH IMO, iterator는 다음 항목/노드로 반복해야하는 경우에 가장 적합합니다. 여기서 OP의 요구 사항은 현재/현재 항목/노드의 속성을 확인하는 것입니다. 그러므로'for()'가 가장 적합하다고 생각됩니다. 예, iterator를 통해서도 가능합니다. – DebanjanB
그건 내 요점이 아니 었습니다;) 질문은'Iterator'에 대한 것입니다, 참고 ** : ** 1) ** for 루프는 반복자를 생성 할 것이므로 똑같은 일을합니다. [this thread] https://stackoverflow.com/a/18410489/4391450). ** 2) **'Iterator'는'Collection'을 "반복"하고 그것을 갱신 할 수 있습니다 (당신의 루프에서 항목을 제거 할 수 없습니다,'ConcurrentModificationException'이 발생합니다). 또한 길이를 관리하지 않고 모음을 읽을 수있는 간단한 솔루션을 제공합니다 (필요에 따라 반복기가 없기 때문에 귀하의 것과 같지만 동시에 액세스 할 수 있음) – AxelH