我正在尝试开发一些图像处理代码。我想设计一个可以支持不同类型的不同 API,像 int、double、float、char 等,无需动态多态性的帮助因为我发现当你处理图像处理时,动态多态性会减慢你的速度,使用 int 或 char 等基元类型是最快的解决方案,但是当我想根据设计不同的API时非常不方便到这些类型。
此外,我想在没有动态多态性负担的情况下做这样的事情
public static void convert_color(
final int[] sp, final int[] dp,
final int Xres, final int Yres,
Strategy strategy)
{
\....
}
一些算法会遭受策略的性能损失(动态多态性)我需要复制和粘贴只是因为策略不同。
很难设计出高性能和灵活的图像处理我目前的水平,你们有更好的解决方案来获得性能和灵活性吗?
我建议你了解 Trove4j 如何解决这个问题,因为它为原语生成集合。您还可以使用他们的收藏。
我会从"超级类型"开始,例如 double
并优化您发现代码有所作为的地方。