考虑这个函数,它将传递给函数的一系列值的结果相加...
int totalColumnWidth = 0;
for(int columnIndex = 0; columnIndex < columnCount; columnIndex++)
totalColumnWidth += getWidthForColumn(columnIndex);
看起来太冗长了!在其他语言中,我可以在一行中完成此操作,这还有一个额外的好处,即允许我将totalColumnWidth 设置为只读。 Java 7 中有这样的东西吗(我们正在为 KitKat API 19 进行 Android 开发)。
我的猜测是“不”,因为我知道 Java 7 不支持此类功能所需的 lambda(您必须传递 getWidthForColumn()
调用),但我很乐意被误会。
最佳答案
你是对的。 Java 7 默认情况下不支持此类功能。不过,它可以使用 Java 8 轻松创建。
但是,有一些库提供类似的方法或模拟 lambda。因此,另请参阅 SO: java streams in Java 7 (如@Oleg所述)。
关于java - Java 7 中是否内置了聚合类型或选择类型的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46777132/