【发布时间】:2011-11-02 00:31:07
【问题描述】:
我正在尝试循环列表 A 并将列表 A 中的每个元素与列表 B 进行比较以寻找匹配项我无法弄清楚为什么这个 while 循环只执行一次?
for (WebElement webElement : inputs)
{
if (webElement.getAttribute("type").equalsIgnoreCase("text"))
{
String element = webElement.getAttribute("id").toString();
System.out.println("Element: " + element);
while(e.hasMoreElements())
{
String param = (String) e.nextElement();
System.out.println("Parameter: " + param);
System.out.println(element.matches(param));
if(element.matches(param))
{
webElement.sendKeys(vars.get(param));
//inputs.remove(element);
}
}
}
}
抱歉这里是剩下的代码,在上面的代码之前引用了
哈希表变量 = 新哈希表(); vars.put("USERNAME","slider");
vars.put("POSTCODE","LU1 3LU");
vars.put("EMAIL","david.cunningham@lumesse.com");
vars.put("DOB","02 Mar 1983");
Enumeration<String> e = vars.keys();
【问题讨论】:
-
e到底是什么?我没有看到减速和初始化。当它只包含 1 个元素时,while 循环只执行一次
-
e引用的是什么?它是一个迭代器吗? -
e是什么,它来自哪里?这段代码中没有声明。 -
e中有什么,你在哪里初始化了e? -
这还不够代码...如果
e只包含一个元素,那么循环应该只执行一次!
标签: java while-loop