更新时间:2023-02-05 08:06:05
如果您的环境支持 Java EE 7 的新 EL 3.0(例如 WildFly 8),然后您就可以利用对 Java 8 之类的新支持 EL 中的流和 Lambda 操作(是的,即使在使用 Java 7 时也能工作).
If your environment supports Java EE 7's new EL 3.0 (e.g. WildFly 8), then you can make use of new support for Java 8-like Stream and Lambda operations in EL (yes, this works even when using Java 7).
在您的特定情况下,您可以使用与 Java 8 的 IntStream#sum()
(或 DoubleStream#sum()
,取决于属性类型):
In your particular case, you can use the EL 3.0 equivalent of Java 8's IntStream#sum()
(or DoubleStream#sum()
, depending on property type):
<h:dataTable value="#{bean.items}" var="item">
<h:column>
#{item.number}
</h:column>
<f:facet name="footer">
Total: #{bean.items.stream().map(item->item.number).sum()}
</f:facet>
</h:dataTable>