为什么Android API要求结果参数而不是返回方法?

我的问题是在整个Android API中,很多库调用都要求将results[]parameter passing给方法,例如:

 public boolean isInProximity(double startLat, double startLongitude, float meters) { float[] results = new float[3]; Location.distanceBetween(startLat, startLongitude, endLatitude, endLongitude, results); return results[0] <= meters; } 

android的调用是Location.distanceBetween() ,它需要results[]为什么他们不包括一个返回签名的方法? 我假设它是某种内存或速度优化。 我不确定背后的确切原因。

Related of "为什么Android API要求结果参数而不是返回方法?"

你是对的,它是关于优化的,那你可以多次调用这个方法而不需要每次分配内存。

编辑 – 这是一个testing,所以: http : //codeyarns.com/2010/10/21/c-return-value-versus-output-parameter/
晚点比我猜想的晚。