0

重複の可能性:
iPhone の ALAsset から取得した URL から画像を表示

私のコードは次のとおりです。

Set<String> windowsid = driver.getWindowHandles();
Iterator<String> iterate = windowsid.iterator();

while(iterate.hasNext()){
    System.out.println(iterate.next());
}

String mainwindow_id = iterate.next();
String tabbedwindow_id = iterate.next();

@エラーが出るString mainwindow_id = iterate.next();

以下を述べると、45行目は私が引用符で囲んだものです。 私はas
を宣言しましたSetString

助けてください !

Exception in thread "main" java.util.NoSuchElementException
at java.util.LinkedHashMap$LinkedHashIterator.nextEntry(LinkedHashMap.java:375)
at java.util.LinkedHashMap$KeyIterator.next(LinkedHashMap.java:384)
at windows.traverse.main(traverse.java:45)
4

2 に答える 2

2

ループの後、

while(iterate.hasNext()){ 
    System.out.println(iterate.next()); 
} 

セットには反復する要素が残っていません。すべてのウィンドウを反復処理したのはそのためNoSuchElementExceptionです。

あなたがやりたいことについて少し説明してもらえますか?

私があなたを正しく理解していれば、ループを使用する必要はありません。ウィンドウが 2 つしかないので、できることは ..

Set<String> windowsid = driver.getWindowHandles();
Iterator<String> iterate = windowsid.iterator();

String mainwindow_id = iterate.next();
String tabbedwindow_id = iterate.next();
于 2012-07-06T12:37:46.043 に答える
1

ループを使用する必要がある場合は、次のようになります

while(iterate.hasNext()){
    String st = iterate.next();
    System.out.println(st);
}
于 2012-07-10T10:55:15.093 に答える