private void swap(JButton btn){
   if(btn.getBackground().equals(color)){
    btn.setBackground(bgColor);
   }else{
    btn.setBackground(color);
   }  
   String[] pos=btn.getActionCommand().split(",");
   int x=Integer.valueOf(pos[0]);//Integer.valueof(String s)是将一个包装类是将一个实际值为数字的变量先转成string型再将它转成Integer型的包装类对象
    //(相当于转成了int的对象)这样转完的对象就具有方法和属性了。 
int y=Integer.valueOf(pos[1]);
   JButton up_btn=null;
   JButton down_btn=null;
   JButton left_btn=null;
   JButton right_btn=null;
  if(x-1>=0){
    up_btn=btns[x-1][y];
   }
   if(x+1<this.getLevel()){
    down_btn=btns[x+1][y];
   }
   if(y-1>=0){
    left_btn=btns[x][y-1];
   }
   if(y+1<this.getLevel()){
    right_btn=btns[x][y+1];
   }
   if(up_btn!=null){   
    if(up_btn.getBackground().equals(color)){
     up_btn.setBackground(bgColor);
    }else{
     up_btn.setBackground(color);
    }
   }
   if(down_btn!=null){
    if(down_btn.getBackground().equals(color)){
     down_btn.setBackground(bgColor);
    }else{
     down_btn.setBackground(color);
    }
   }
   if(left_btn!=null){
    if(left_btn.getBackground().equals(color)){
     left_btn.setBackground(bgColor);
    }else{
     left_btn.setBackground(color);
    }
   }
   if(right_btn!=null){
    if(right_btn.getBackground().equals(color)){
     right_btn.setBackground(bgColor);
    }else{
     right_btn.setBackground(color);
    }
   }  
}

解决方案 »

  1.   

    if(up_btn!=null){   
        if(up_btn.getBackground().equals(color)){
         up_btn.setBackground(bgColor);//bian mian ban se
        }else{
         up_btn.setBackground(color);
        }
       }
    就解释这段吧。还有,我怎么判断所有的BUTTON都变色了?  
      

  2.   

    String[] pos=btn.getActionCommand().split(",");
       int x=Integer.valueOf(pos[0]);//Integer.valueof(String s);
       int y=Integer.valueOf(pos[1]);
    解释这几句好了,那几句我看懂了
      

  3.   

    这是一个什么东西
    获得一堆按钮动作事件名称,然后存在数组里面,还转换成int...看不懂要干什么..
      

  4.   


    if(up_btn!=null){  
        if(up_btn.getBackground().equals(color)){ 
            up_btn.setBackground(bgColor);
        }else{ 
            up_btn.setBackground(color); 
        } 
      } 判断up_btn的Background是否和color一致
    不明白你的意思