for ( int i = ArrayA.GetLowerBound(0); i <= ArrayA.GetUpperBound(0); i++ ) { for ( int j = ArrayB.GetLowerBound(0); j<= ArrayB.GetUpperBound(0); j++ ) { if (ArrayA(i)==ArrayB(j)) { //copyto c } } }
一次循环就够了把B循环一遍,看B中的数是否存在A 中就可以了。。
int c = 0; for ( int b = 0; b < B.Length; b++ ) { for ( int a = 0; a < A.Length; a++ ) { if ( B[b] == A[a] ) { break; } C[c++] = B[b]; } }
上面的错了 int c = 0; for ( int b = 0; b < B.Length; b++ ) { for ( int a = 0; a < A.Length; a++ ) { if ( B[b] == A[a] ) { break; } } C[c++] = B[b]; // 这句得放这 }
{
for ( int j = ArrayB.GetLowerBound(0); j<= ArrayB.GetUpperBound(0); j++ )
{
if (ArrayA(i)==ArrayB(j))
{
//copyto c
}
}
}
for ( int b = 0; b < B.Length; b++ )
{
for ( int a = 0; a < A.Length; a++ )
{
if ( B[b] == A[a] )
{
break;
}
C[c++] = B[b];
}
}
int c = 0;
for ( int b = 0; b < B.Length; b++ )
{
for ( int a = 0; a < A.Length; a++ )
{
if ( B[b] == A[a] )
{
break;
}
}
C[c++] = B[b]; // 这句得放这
}
a.Add(2);
a.Add(3);
System.Collections.ArrayList b = new System.Collections.ArrayList();
b.Add(1);
b.Add(2);
b.Add(3);
b.Add(4);
b.Add(5);
b.Add(6);
System.Collections.ArrayList c = new System.Collections.ArrayList();
for(int i=0;i<b.Count;i++)
{
if(!a.Contains(b[i]))
{
c.Add(b[i]);
}
}
int[] b = { 1, 2, 4, 6 }; int[] c = Array.FindAll(a, delegate(int v) { return Array.IndexOf(b, v) < b.GetLowerBound(0); });