//判断数组dealt成员的face值是否相等,并打印结果for(int i=0;i<5;i++)
  for(int j=0;j<5&&j!=i;j++){
     String I=dealt[i].face;
     String J=dealt[j].face;
       if(I.equals(J)){
      
      for(int m=0;m<5&&m!=i&&m!=j;m++)
        for(int n=0;n<5&&n!=m&&n!=i&&n!=j;n++){
        String M=dealt[m].face;
        String N=dealt[n].face;
    if(M.equals(N))showStatus("该手牌有两对牌");  
     else
     showStatus("该手牌有一对牌但没有两对牌");
       
   break;
  } }
 else
   showStatus("没有一对牌");
       
 break;
        
 }     结果只会打印"没有一对牌",中间的两条语句不打印 。

解决方案 »

  1.   

    循环的条件错误
    for(int i=0;i<5;i++)
      for(int j=0;j<5 && j!=i;j++)循环开始
    i=0,j=0,第二个循环的条件  j<5 && j!=i  首先就不满足了,
    你的循环条件相当于
    for(int i=0;i<5;i++)
      for(int j=0;j<i;j++)
        ...
    我想这样的结果不是你想要的吧
      

  2.   

    循环判断表达式写得有问题试试: 
    for(int i=0;i<5;i++)
    {
      for(int j=0;j<5;j++){
        if(j==i)
           continue;
         .........  
      }
    }
      

  3.   

    多重循环跳出时用标志位:
    boolean a = false;
    for
    {
       ......
       for
       {
           ....
           if (true)
           {
               a = true;
               break;
           }
       }
       if (a)
           break;
       ......
    }