我正在读取 XML 文件来填充一些数据结构,当我检查最终结构时遇到了此类问题:
arrayName
[0] = null
[1] = input
[2] = null
[3] = input
等等
输入是我想要的,类型是我自己的类。
我习惯了 C#,所以我通常会使用 LINQ 来摆脱它们,有想法在 Java 中做这样的事情吗?
我将查看导致其发生的代码有什么问题,但现在我需要一个快速解决方案。
想法?
编辑:
我发现了这个问题,我创建了一个大小为 doc.getChildNodes().getLength() 的数组,当我在数组中设置元素时(循环时),我检查是否
getNodeType() == Node.ELEMENT_NODE)
而且有一半时间不起作用。问题是,我根据大小初始化数组,因此一半数组被填充。
想法?
最佳答案
数组在 Java 中是不可变的(不是它们的内容,而是数组本身)。不存在动态大小的数组或长度变化之类的事情。因此,您首先需要迭代、计数、创建新数组、复制...或使用适当的数据结构,甚至可能是封装新数组的创建并提供诸如 ArrayList 之类的操作方法的数据结构。
像 LINQ 这样的东西还不存在,你需要一些显式的对象来封装操作或过滤。
关于java - 删除数组中的 Null 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20820883/