gpt4 book ai didi

java - 通过数组搜索 NodeList

转载 作者:行者123 更新时间:2023-12-01 18:43:10 24 4
gpt4 key购买 nike

我有一份正在搜索特定实例的文档,但是这些实例是由用户指定的,并且有多个。除了 for 循环内的 for 循环根据数组搜索 Nodelist 之外,我是否缺少一种不会使系统陷入困境的方法?或者更简单的方法?

到目前为止,我的代码抽象如下:

public void sortDoc(Document doc){
NodeList list = doc.getFirstChild().getChildNodes();
ArrayList<String> typeList = otherSorter.getTypes();
for(int i=0; i<list.getLength(); i++){
for(int j=0; j<typeList.size(); j++){
if(list.item(i).getNodeName()==typeList.get(j)){
doTheThing();
}
}
}
}

感谢您提供的任何帮助。

最佳答案

您可以使用List#contains(Object)检查 ArrayList 中的节点名称。

for(int i=0; i<list.getLength(); i++){
if(typeList.contains(list.item(i).getNodeName())){
// Do Something.
}
}

另外,

if(list.item(i).getNodeName()==typeList.get(j)) {

永远不会使用上面的==运算符进行字符串值比较。

始终使用equals()字符串值比较的方法如下:

if(list.item(i).getNodeName().equals(typeList.get(j))) {

关于java - 通过数组搜索 NodeList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19043404/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com