我想模仿以下界面:
interface MultiSideEffectFunction<T> {
void action(T first, T second);
}
Run Code Online (Sandbox Code Playgroud)
(这将使我免于必须引入新的界面)
有没有一种首选的番石榴方法来做到这一点?
注意:我考虑过这样做
Function<Pair<T>, Void>
Run Code Online (Sandbox Code Playgroud)
但是有两个问题使得创建新界面更为可取:
Pair<T>,它看起来很像一个Map.Entry<T, T>更合适的名称吸气剂(作为第二个问题:是否有这样的番石榴类型?).Void返回类型是永远的痛-这将是最好有一个真正的void签名.番石榴贡献者在这里.
首选的Guava方法是编写自己的界面.
特别要注意不能使用Function; Function只应在功能没有副作用时使用.
番石榴故意缺乏Pair类型; 我们建议,只要你需要一对,你就可以创建自己的类,将有用的名称附加到两个值上,而不是完全没有信息的"第一"和"第二".(典型的例子是GPS坐标;一个名为的LatLong信息比一个信息更丰富Pair<Double, Double>.)
| 归档时间: |
|
| 查看次数: |
1917 次 |
| 最近记录: |