为什么 LongSummaryStatistics 实现 IntConsumer?
2022-09-03 14:34:25
为什么在有哪个也实现的时候实现?LongSummaryStatistics
IntConsumer
IntSummaryStatistics
IntConsumer
为什么在有哪个也实现的时候实现?LongSummaryStatistics
IntConsumer
IntSummaryStatistics
IntConsumer
LongSummaryStatistics
实现,以便它可以接受值和值。IntConsumer
int
long
例如,这允许您将其传递给需要 的方法,以便抽象地使用一些数据:IntConsumer
int
LongSummaryStatistics lss = new LongSummaryStatistics();
someMethod(lss);
void someMethod(IntConsumer consumer) { ... }
没有真正的理由为什么a不应该用于此目的:总是可以扩大到没有损失。但是,除非直接实现,否则类型系统不允许用作参数。LongSummaryStatistics
int
long
lss
someMethod
LongSummaryStatistics
IntConsumer
没错,您可以在不实现接口的情况下使用 lambda 执行此操作:
someMethod(i -> lss.consume(i));
但是直接使用引用会更整洁一些。