How do the post increment (i++) and pre increment (++i) operators work in Java?

Can you explain to me the output of this Java code? int a=5,i; i=++a + ++a + a++; i=a++ + ++a + ++a; a=++a + ++a + a++; System.out.println(a); System.out.println(i); The output is 20 in both cases