Passar variáveis ​​para ActionListener em Java

Eu tenho algo parecido com o código abaixo:

    for(int i=0;i<10;i++){
        button=new JButton(buttons[i]);
        button.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e) {
                setPage(i);
            }
        });
        menu.add(button);
    }

No entanto, a variáveli&nbsp;não está definido no escopo da classe ActionListener. Como posso passar a variável?