codice:
class Esercizio{
   public static boolean M(int i){
     boolean b = true;
     if(i==0) return b;
     else return !M(i-1);
   }

   public static void main(String args[]){
     System.out.print(M(4));
   }
}
Non capisco perchè mi ritorna true anzichè false...

Cioè esegue la funzione ricorsivamente finchè i=0 e in quel caso ritorna true pero' col !M non dovrebbe ritornare false??