我想优化以下代码,基于以下逻辑使用现有的
ArrayList
创建一个新列表。 Java 8中的流/lambda是否使其成为可能?for (ShipmentTracingDTO tracing : tracings) {
if (tracing.getDestination()) {
newTracings.add(tracing);
break;
}
newTracings.add(tracing);
}
takeWhile
,但是当元素即使满足条件也被add
的部分更棘手,因为takeWhile
会忽略该特定元素。 - Namanfor (ShipmentTracingDTO tracing : tracings) { newTracings.add(tracing); if(tracing.getDestination()) break; }
这段代码时,你的循环会变得更简单。它的作用是遍历tracings
集合中的每一个元素,并将其添加到newTracings
集合中,直到遇到getDestination()
方法返回 true,此时循环将被打破(break)。 - Holger