Цикл для задания ActionListener кнопкам - Java

Узнай цену своей работы

Формулировка задачи:

Здравствуйте, осваиваю java и решил написать калькулятор. Если не вдаваться в подробности кода то возникла проблема с циклом для задания разным кнопкам одного и того же ActionListener. Вот моя идея по этому поводу
for(int a=0;a<10;a++)
{
 buttons[a]=new JButton();
}
for(int b=0;b<10;b++)
{
    panel.add(buttons[b]);
 buttons[b].setText(""+b);
}
for(Integer b=0;b<10;b++)
{
     buttons[b].addActionListener(new ActionListener() 
     {      
         public void actionPerformed(ActionEvent e)
         {                                  
             textField.setText(textField.getText()+b.toString());            
         }
});
Подскажите возможно ли это сделать?
Ошибка возникает в строке textField.setText(textField.getText()+b.toString()); Ошибка : local variable b defined in an enclosing scope must be final or effectively final

Решение задачи: «Цикл для задания ActionListener кнопкам»

textual
Листинг программы
listener = new YourListener();
 
buttonA.addActionListener(listener);
buttonB.addActionListener(listener);
buttonC.addActionListener(listener);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.867 из 5
Похожие ответы