boolean flag=false;
for(int i=0;i<a,lenght;i++)
{ for(int j=0;j<b.lenght;j++)
  { if(a[i]!=b[j]) {
       flag=false;
    } else {
       flag=true;
    }
    flag=flag || false;
  }
  if(flag==false) c[i]=a[i];
  flag=false;
}

解决方案 »

  1.   

    <%@ page import="java.util.*" %>
    <%
    int[] a = new int[]{10,20,30,40,50,60,70,80,90} ;
    int[] b = new int[]{100,20,300,40,500,60,700,80,900} ;
    Integer[] c = null ;
    boolean flag ;
    java.util.Vector v = new java.util.Vector() ;
    for (int i = 0 ;i<a.length;i++){
    flag = true ;
    for(int j=0;j<b.length;j++){
    if (a[i]==b[j]){
    flag = false ;
    break ;
    }
    }
    if (flag)
    v.addElement(new Integer(a[i])) ;
    }
    c = new Integer[v.size()] ;
    v.copyInto(c) ;
    for (int i = 0;i<c.length;i++)
    out.println(c[i]+",") ;
    %>
      

  2.   

    for(int i=0;i<a,lenghth;i++)
    { for(int j=0;j<b.lenghth;j++)
      { if(a[i]!=b[j])
           c[i]=a[i];
        }
     }
      

  3.   

    for(int i=0;i<a.length;i++)
    { for(int j=0;j<b.length;j++)
      { if(a[i]!=b[j])
           c[i]=a[i];
        }
     }
      

  4.   

    for(int i=0;i<a,lenght;i++)
    { for(int j=0;j<b.lenght;j++)
      { if(a[i]!=b[j])
           c[i]=a[i];
        }
     }
    你的这段代码的算法本来就有问题。只有a中的元素与b中的每个元素都比较后且都不相等,才能放入c中;如果在比较过程中出现了相等,那就不用比较后面了,直接取a中的下一个元素进行比较。