java - 删除 CSV 文件中的行
问题描述
我创建了一个ArrayList
名为entryList
. 我尝试创建的方法是,如果您编写removeAllByDate()
并输入日期,则应删除包含该日期的整行。entryList
依次由条目(行)组成,我还创建了方法
getDate()
。我想写这样的东西:
public void removeAllByDate(String datum) {
for(Entry entry: entryList) {
if (entry.getDate().contains(datum)) {
entryList.remove(entry);
}
}
}
有谁知道为什么这不起作用?
解决方案
从 Java 8 开始,有条件地从 a 中删除元素时使用的方法Collection
是removeIf()
. 您的代码将如下所示:
entryList.removeIf(entry -> entry.getDate().contains(datum));
原始代码不起作用,因为在迭代集合时不允许删除元素,请参阅此问题和答案。
推荐阅读
- asp.net - 如何将复选框的值分配给剃刀变量?
- javascript - 如何在 ES6 import 语句中使用全局依赖?
- python - 包含相似功能的类之间的动态切换
- python - 将基于时间的字符串转换为数字
- ace-editor - 为什么 chrome 的灯塔审核不适用于 ace Texteditor
- javascript - 用函数合并两个选项对象
- arrays - 不重复的背包
- python - 如何在不使用 Python 中的 Numpy 的情况下从给定列表创建矩阵
- flutter - Flutter Firebase 只让某些数据显示在列表视图构建器上
- google-bigquery - 使用 bigquery 连接来自两个来源的数据