我试图将链接存储在列表中,请按照以下代码操作
public class frameswitch {
public static void main(String[] args) {
System.setProperty("webdriver.gecko.driver","C:\\geckodriver\\geckodriver.exe");
WebDriver driver=new FirefoxDriver();
String baseUrl="https://www.udacity.com/";
driver.get(baseUrl);
String Title="Udacity - Free Online Courses and Nanodegree Programs";
List<WebElement> linkElements = driver.findElements(By.tagName("a"));
}
}
但在使用列表时遇到错误
List 类型不是通用的;它不能用参数参数化<WebElement>
type
这是您问题的答案:
错误说明了一切The type List is not generic; it cannot be parameterized with arguments <WebElement> type
。这意味着当您配置List
as in List<WebElement> linkElements
,不小心你导入了它java.awt.List
没有定义的地方。因此出现了错误。
下面的截图显示了这一切:
解决方案:
作为解决方案,我使用了您自己的代码导入java.util.List
代替java.awt.List
并且您的代码块工作得很好:
package demo;
import java.util.List;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
public class Q45402867_tagname_a {
public static void main(String[] args) {
System.setProperty("webdriver.gecko.driver","C:\\Utility\\BrowserDrivers\\geckodriver.exe");
WebDriver driver=new FirefoxDriver();
String baseUrl="https://www.udacity.com/";
driver.get(baseUrl);
String Title="Udacity - Free Online Courses and Nanodegree Programs";
List<WebElement> linkElements = driver.findElements(By.tagName("a"));
System.out.println(linkElements.size());
for (WebElement ele:linkElements)
System.out.println(ele);
}
}
控制台上的输出是:
86
[[FirefoxDriver: firefox on ANY (ef81931f-9530-4998-8405-6581ab51c86e)] -> tag name: a]
... 84 more ...
[[FirefoxDriver: firefox on ANY (ef81931f-9530-4998-8405-6581ab51c86e)] -> tag name: a]
如果这能回答您的问题,请告诉我。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)