Eventuali duplicati:
Order of execution of parameters guarantees in Java?Metodo parametri d'ordine in Java
Se ho un metodo Java come:
public void func(byte b, byte c) {...}
e lo uso come questo:
a = 0;
func(a++, a);
Quale parametro viene superato per primo? Perché se non sbaglio, se è quello di sinistra allora b = 0 ec = 1. E se è quello giusto allora b = 0 ec = 0?
Grazie.
Penso che sia una domanda interessante, ma il vantaggio è vicino allo zero. Non consiglierei di scrivere codice come questo, perché è altamente poco chiaro - altrimenti non avresti chiesto. Ma non dovrebbe essere così difficile trovare una soluzione. – Koraktor
1) Non vorrei vedere questo codice in produzione. 2) Provalo. Allora lo saprai. –
Non è "passato prima", è "valutato quando". Sono passati allo stesso "tempo". –