我有一个带有 JPanel 的二维数组,我想在数组中的每个 JPanel 中添加一个 mouseListener,所以我使用 2 个 for 循环来添加它们,但是我想在每个 mouseListener 中传递我在 for 循环中使用的变量但是当我尝试是否所有 mouseListener 与最后一个 for 循环中使用的最后一个变量的值相同。所以我做错了什么?
这是我的代码:
for (i=0 ; i<3; i++) {
for (k=0; k<3; k++) {
a[i][k].addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e){
temp = a[i-1][k];
a[i-1][k] = a[i][k];
a[i][k] = temp;
//some
//code here
public void mouseClicked (MouseEvent e) {}
public void mouseReleased(MouseEvent e)
{
invalidate();
revalidate();
repaint();
}
public void mouseEntered (MouseEvent e)
{}
public void mouseExited (MouseEvent e) {
}
});
}
}
我只需要知道是否有办法将变量 i,k 作为参数传递给 mouseListener