Duplicar posible:
Order of execution of parameters guarantees in Java?Método parámetros de orden en Java
Si tengo un método Java como:
public void func(byte b, byte c) {...}
y lo uso como esto:
a = 0;
func(a++, a);
¿Qué parámetro se pasa primero? Porque si no estoy equivocado, si es el izquierdo, entonces b = 0 yc = 1. Y si es el correcto, entonces b = 0 yc = 0?
Gracias.
Creo que es una pregunta interesante, pero el beneficio es casi nulo. No recomendaría escribir código como este, porque no está muy claro; de lo contrario, no lo habría preguntado. Pero no debería ser tan difícil encontrar una solución. – Koraktor
1) No me gustaría ver este código en producción. 2) Pruébalo. Entonces sabrás. –
No es "pasado primero", es "evaluado cuando". Se pasan al mismo "tiempo". –