是的,像这样包含功能中的繁重工作正是NDK发挥作用的地方。请记住,Java是可解释的,而在2.2之前的Android上,没有JIT,因此每条指令每次都会被解释-
这是一个巨大的开销。
即使使用JIT,每个数组访问也会执行隐式边界检查,因此存在大量开销。
如果您使用C ++编写此函数,它将明显更快。

是的,像这样包含功能中的繁重工作正是NDK发挥作用的地方。请记住,Java是可解释的,而在2.2之前的Android上,没有JIT,因此每条指令每次都会被解释-
这是一个巨大的开销。
即使使用JIT,每个数组访问也会执行隐式边界检查,因此存在大量开销。
如果您使用C ++编写此函数,它将明显更快。