【发布时间】:2021-09-23 13:59:57
【问题描述】:
可以有很少的计划和很少的关税。需要从计划中删除所有关税,当remove == N。尝试使用此代码执行此操作,但没有任何反应。我的意思是,我在控制台中调试并看到了remove is T,但代码无论如何都不会删除关税。如何修复删除?
remove = "Y";
List<Plan> plan = new ArrayList<Plan>();
plan.addAll(plan2);
for (int i = 0; i < plan.size(); i++) {
List<Tariff> tariff = new ArrayList<Tariff>();
tariff.addAll(plan.get(i).getTariff());
for (int j = 0; j < tariff.size(); j++) {
if(tariff.get(j).getCode().equals("N")) {
remove = "N";
}
}
plan.get(i).getTariff().removeIf(condition -> remove.equals("Y"));
}
【问题讨论】:
-
condition -> remove.equals("Y")要么全部为真,要么全部为假。如果要删除所有内容,请使用.clear();如果你不想删除东西,就不要调用任何东西。 -
你的问题不清楚。
-
请解释您的用例。谢谢。