Java中函数指针最近的替代品是什么?

Java中函数指针最近的替代品是什么?

我有一个大约十行代码的方法。我想要创建更多的方法来做完全相同的事情,除了一个小的计算,它将改变一行代码。这是传递函数指针以替换这一行的完美应用程序,但是Java没有函数指针。我最好的选择是什么?



ibeautiful
浏览 635回答 3
3回答

眼眸繁星

对于每个“函数指针”,我会创建一个小的函子类实现了你的计算。定义所有类都要实现的接口,并将这些对象的实例传递到更大的函数中。这是“指挥模式“,和”战略模式".

慕沐林林

当在这一行中预先定义了一些不同的计算时,使用枚举是实现策略模式的一种快速而清晰的方法。public enum Operation {     PLUS {         public double calc(double a, double b) {             return a + b;         }     },     TIMES {         public double calc(double a, double b) {             return a * b;         }     }      ...      public abstract double calc(double a, double b);}显然,策略方法声明以及每个实现的确切实例都是在一个类/文件中定义的。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java