试试这样吧 private static void calculate(String[] number, String[] corlor, boolean[] v, int size,String lastColor,String lastNumber,int allNumber) {         boolean flag=true;         for(int i=0;i<size;i++ ){             if(!v[i]){                 flag = false;             }         }         if(flag){             if(allNumber>count){                 count = allNumber;             }             return;         }         for(int i=0;i<size;i++){             if(v[i]){                 continue;             }             v[i]=true;             if(number[i].equals(lastNumber)||lastNumber.equals("")){                 calculate(number,  corlor,  v,  size, corlor[i], number[i],allNumber+1);             }             if(corlor[i].equals(lastColor)||lastColor.equals("")){                 calculate(number,  corlor,  v,  size, corlor[i], number[i],allNumber+1);             }             v[i] = false;         }         if(allNumber>count){             count = allNumber;         }     }