Duvida no action listener de um array de componentes!

Oi Pessoal!

É o seguinte, eu tenho um array de n itens… para cada item eu crio um JPanel e um JCheckBox através de um loop! Acontece q eu quero, ao apertar um botão, saber qual check box q esta selecionado… como faço isso?

Eu inicializei um array de checkbox do tamanho do array de itens… entao eu coloco cada check desse array em cada painel… será q eu viajei?

O código do meu loop:

[code]//loop por cada produto selecionado
for(i=1; i<arrayResultado.size();i++)
{
// criando um painel para cada item
painel2 = new JPanel();
painel2.setPreferredSize ( new Dimension (200, 200) );
painelEspecificacao.setBackground(Color.GRAY);
painelSaida.add(painel2);

// inserindo checkbox no painel
checkBox = (JCheckBox)arrayCheck.get(i-1);
painel2.add( checkBox );[/code]

Voce pode utilizar um ActionListener e adiciona-lo em todos os checkboxes.

exemplo:

Crie um unico listener

/*Criando o action listener*/
ActionListener checkListener = new ActionListener(){
    public void actionPerformed(ActionEvent evt){
          /*Para saber qual o component foi selecionado*/
          Component compSelectionado = evt.getSource();
         ...
    }
};

Adicione-o nos checkboxes

for(i=1; i<arrayResultado.size();i++)
 {
 	// criando um painel para cada item
 	painel2 = new JPanel();
 	painel2.setPreferredSize ( new Dimension (200, 200) );
 	painelEspecificacao.setBackground(Color.GRAY);
 	painelSaida.add(painel2);
 			
 	// inserindo checkbox no painel
 	checkBox = (JCheckBox)arrayCheck.get(i-1);

        /*ADICIONANDO O LISTENER NO CHECKBOX*/
        checkBox.addActionListener(checkListener);

 	painel2.add( checkBox );