salve, sto studiando il java in quanto a metà febbraio devo sostenere l'esame di fondamenti di informatica!
Seguendo gli esercizi proposti dal libro mi è stato chiesto di modificare una classe che usa cicli annidati per stampare a video quadrati invece di triangoli.

Qui di seguito il codice della classe che crea i quadrati:
codice:
class quadrato
{ 
 public quadrato(int l)
 { 	    
  lato = l;
 }
   
 public String costruisci()
 { 	    
  String q = "";   
  for (int i = 1; i <= lato; i++)
  {	     	   	
   for (int j = 1; j <= lato; j++)
   
   q = q + "[]";	 	
   q = q + "\n";
   }           
   return q;
 }

private int lato;
 }
Ora il problema è il seguente:
Nella classe sopra citata io per far apparire un quadrato invece di un triangolo ho scritto nel secondo ciclo for "j <= lato" mentre per far apparire un triangolo scrivevo "j <= i".
Non mi è chiaro cosa cambia tra le 2 cose, cioè non capisco perchè facendo quella sostituzione stampa un quadrato!
Ringrazio in anticipo per l'aiuto che potreste darmi.