En ArrayList minus en anden ArrayList
Her på de sene nattetimer har jeg rodet med at lave en metode der tager alle strengene i ét array og flytter dem over i et nyt array, bortset fra dem der eksisterer i et tredje array.Det her skulle gerne virke...
public static void remake(ArrayList all, ArrayList invalid) {
IEnumerator recEnum = all.GetEnumerator();
IEnumerator invEnum;
ArrayList approved = new ArrayList();
while (recEnum.MoveNext()) {
invEnum = invalid.GetEnumerator();
bool valid = true;
while (invEnum.MoveNext()) {
if (invEnum.Current.ToString().Equals(recEnum.Current.ToString())) {
valid = false;
break;
}
}
if (valid) {
approved.Add(recEnum.Current);
}
}
}
Jeg har dog en grum fornemmelse af at jeg har gjort det på en vildt ineffektiv måde. Nogen der har et forslag til at forbedre den? Gerne bare småting, for det drejer sig om to arrays med rigtig, rigtig mange elementer i.
