cor*_*ces 1 java loops for-loop arraylist
这是我关于堆栈溢出的第一个问题,但我有一些Java经验.我正在制作Java应用程序(575行并计数!)并且我正在尝试在ArrayList中搜索字符串.但我不希望它是准确的!让我澄清一下:我想迭代每个ArrayList元素并在该字符串中搜索另一个字符串.如果在ArrayList元素中找到该字符串,(现在)我想将它打印到控制台.我希望我已经足够清楚了.
以下是相关代码.定义所有变量并编译代码,不打印任何输出(来自搜索功能).我很确定这是因为for循环没有执行,但我很困惑为什么.
//the keylistener that calls the search() function, attached to a JTextField that the query is entered into
class searchFieldListener implements KeyListener {
searchFieldListener() {
}
public void keyTyped(KeyEvent event) {
if (event.getID() == KeyEvent.KEY_TYPED) {
query = searchField.getText()+Character.toString(event.getKeyChar());
System.out.println(query);
for (i = 0; i == nameList.size(); i++) {
search(query, i);
}
}
}
public void keyReleased(KeyEvent event) {
}
public void keyPressed(KeyEvent event) {
}
}
//the troublesome search() function
void search(String query, int iter) {
searchString = nameList.get(iter);
System.out.println(searchString);
if (searchString.indexOf(query) != -1) {
System.out.println(Integer.toString(iter));
} else {
System.out.println("not found \n");
}
}
Run Code Online (Sandbox Code Playgroud)
变量/对象和用途:
你的for循环没有执行的原因是因为循环中使用的条件:
for (i = 0; i == nameList.size(); i++)
^^
Run Code Online (Sandbox Code Playgroud)
由于ArrayList类的size方法返回了您可能想要的元素数
i < nameList.size()
.
归档时间: |
|
查看次数: |
1580 次 |
最近记录: |