With a fully optimized JIT they'd be identical.  With a "dumb" JIT or
interpretive code I'd guess that the Size approach would have a slight
edge (no need to check array bounds, et al), but it's hard to say with
any certainty.  (A lot depends on how well optimized instance field
access is, and there's potential for a 100:1 variation there.)

In any event, the amount of time difference you're talking about is
negligible compared to many other operations that go on inside a
typical Android application.  A single tweak of a single character on
the display would be thousands of times greater.

On Oct 7, 10:34 am, webmonkey <[email protected]> wrote:
> Taking into account JIT and non-JIT devices, what would be most
> efficient on Android for returning multiple values from functions:
>
> an array like this:
>
> float[] bestSize(float [] result) {
>
>   // calculations...
>
>   result[0] = width;
>   result[1] = height;
>   return result;
>
> }
>
> or a final class like this:
>
> Size bestSize(Size result) {
>
>   // calculations...
>
>   result.width = width;
>   result.height = height;
>   return result;
>
> }
>
> Where Size is defined as:
>
> public final class Size {
>   public float width;
>   public float height;
>
> }

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to