Filtern von Arrays
Swipe um das Menü anzuzeigen
Das Filtern eines Arrays bedeutet, nur diejenigen Elemente auszuwählen, die bestimmte Bedingungen erfüllen, wie zum Beispiel einen bestimmten Wert zu überschreiten oder einem Muster zu entsprechen. Dieser Vorgang wird als Filtern bezeichnet, weil Sie die Elemente, die Ihre Kriterien nicht erfüllen, "herausfiltern" und nur die gewünschten Elemente behalten. Filtern ist eine gängige Aufgabe, wenn Sie mit einer Teilmenge von Daten aus einer größeren Sammlung arbeiten möchten.
Program.cs
1234567891011121314151617181920using System; namespace ConsoleApp { public class Program { public static void Main(string[] args) { int[] numbers = { 10, 55, 23, 67, 89, 34, 51, 42 }; Console.WriteLine("Numbers greater than 50:"); for (int i = 0; i < numbers.Length; i++) { if (numbers[i] > 50) { Console.WriteLine(numbers[i]); } } } } }
Um zu verstehen, wie das Filtern in der Praxis funktioniert, betrachten Sie jeden Schritt im obigen Code. Zuerst gibt es ein Array von Ganzzahlen mit dem Namen numbers. Es sollen nur die Zahlen angezeigt werden, die größer als 50 sind. Dazu wird das Array mit einer for-Schleife durchlaufen. Innerhalb der Schleife wird mit einer if-Anweisung geprüft, ob die aktuelle Zahl größer als 50 ist. Wenn die Bedingung erfüllt ist, wird diese Zahl ausgegeben. Auf diese Weise werden nur die Zahlen, die Ihrer Bedingung entsprechen – also größer als 50 sind – in der Konsole ausgegeben.
Program.cs
123456789101112131415161718192021222324252627282930using System; using System.Collections.Generic; namespace ConsoleApp { public class Program { public static void Main(string[] args) { int[] numbers = { 10, 55, 23, 67, 89, 34, 51, 42 }; List<int> filteredList = new List<int>(); for (int i = 0; i < numbers.Length; i++) { if (numbers[i] > 50) { filteredList.Add(numbers[i]); } } int[] filteredArray = filteredList.ToArray(); Console.WriteLine("Filtered array:"); for (int i = 0; i < filteredArray.Length; i++) { Console.WriteLine(filteredArray[i]); } } } }
Arrays in C# haben eine feste Größe. Beim Filtern von Elementen weiß man oft nicht im Voraus, wie viele die Bedingung erfüllen werden. Ein gängiger Ansatz ist die Verwendung einer temporären List<T>, um die gefilterten Elemente zu sammeln, und anschließend die Liste bei Bedarf in ein Array umzuwandeln.
1. Warum kann man Elemente aus einem C#-Array nicht einfach entfernen?
2. Was ist eine gängige Methode, um gefilterte Ergebnisse aus einem Array zu speichern?
3. Wie prüft man, ob ein Element eine Filterbedingung erfüllt?
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen