Hier ist meine Funktion in der ich verschachtelte Schleifen verwende wie:Code-Effizienz für verschachtelte Schleifen C#
public string HGSearchNew(HolidayFeedService.PackageHolidays.SearchCriteria objsearchcriteria, dynamic search)
{
XmlDocument xdoc = new XmlDocument();
XmlNodeList ndepartures = xdoc.SelectNodes("Destinations/Departure");
string sFinalDeparture = objsearchcriteria.DepartureAirport.ToUpper();
for (int i = 0; i < objsearchcriteria.DepartureAirport.Split('|').Length; i++)
{
for (int j = 0; j < ndepartures.Count; j++)
{
if (objsearchcriteria.DepartureAirport.Split('|')[i].ToUpper() == ndepartures[j]["Name"].InnerText.ToUpper())
{
if (!sFinalDeparture.Contains(objsearchcriteria.DepartureAirport.Split('|')[i].ToUpper()))
sFinalDeparture += objsearchcriteria.DepartureAirport.Split('|')[i].ToUpper() + "|";
break;
}
}
}
return sFinalDeparture;
}
Ich möchte wie anstelle von Schleifen dieser Code effizienter machen, die Verwendung von Inhalt oder irgendwelche Funktionen zum Vergleichen . bitte hilf mir aus?
Sie sollten objsearchcriteria.DepartureAirport.Split speichern '(‚|‘)' innen variabel und diese Variable verwenden stattdessen. Ansonsten ist es seine schreckliche Idee, sich immer wieder auf die gleiche Saite zu spalten. –
@ M.kazem Akhgary danke aber ist es Auswirkungen auf Geschwindigkeit oder Effizienz? –
Beide. Mit der lächerlichen Verschwendung, die du dort hast (gleich mit sFinalDeparture als String, anstatt die Zeichenkette am Ende zu erstellen) verschwendest du nur Speicher und Geschwindigkeit nach links und rechts. – TomTom