Quote Originariamente inviata da Jamie04 Visualizza il messaggio
In che senso?
Che non devi "fissarti" sul fatto che la variabile (se non usi un array) è una sola .... perché magari serve solo come variabile temporanea.
Spiego con esempio abbozzato:

codice:
for (int i = 0; ................) {
    JButton button = new JButton( .....etichetta..... );
    int dato = ..........;
    button.addActionListener(new MyActionListener(dato));
    pannello.add(button);
}

Anche se la variabile 'button' (e 'dato') è una sola e ad ogni ciclo ha un reference ad un nuovo JButton, non importa qui. Quello che importa è aver agganciato il pulsante al suo listener con il suo dato e aver inserito il pulsante nel pannello (che potrebbe avere es. un GridLayout).

Certo, qui non ho usato un array, quindi successivamente non puoi fare: "voglio il JButton i-esimo" ma .... magari non ti serve nemmeno visto che tutto è incapsulato/agganciato a dovere (ogni JButton ha il suo oggetto listener e ognuno di questi ha il suo dato).

Quote Originariamente inviata da Jamie04 Visualizza il messaggio
Quindi l'array mi serve o no?
Non necessariamente ... e visto lo scenario che hai descritto, direi di no.

Quote Originariamente inviata da Jamie04 Visualizza il messaggio
La finestra deve dimensionarsi a seconda del numero di pulsanti che deve contenere.
Sì, però se vuoi una griglia devi stabilire alcune cose: cosa imponi? il numero di colonne? o di righe? o è in base al numero di pulsanti? (es. cose particolari tipo: fino a 9 usi 3 colonne, fino a 16 usi 4 colonne, ecc....)
Cerca di precisare, se vuoi risposte o comunque avere chiaro cosa vuoi ottenere.