csharp / intermediate
Snippet
Generisches Array-Mapping ohne Linq
Das Verständnis der manuellen Implementierung generischer Transformationen auf Arrays hilft beim Meistern von Generika und Funktionsdelegaten. Dieser Ansatz vermeidet Overhead durch externe Bibliotheken und konzentriert sich auf die Effizienz der Kernsprache.
snippet.cs
csharp
1
2
3
4
5
6
7
8
9
10
11
12
13
public TOutput[] MapArray<TInput, TOutput>(TInput[] input, Func<TInput, TOutput> mapper){TOutput[] result = new TOutput[input.Length];for (int i = 0; i < input.Length; i++){result[i] = mapper(input[i]);}return result;}// Usageint[] nums = { 1, 2, 3 };string[] strings = MapArray(nums, x => x.ToString());
Erklärung
1
<TInput, TOutput>
Definiert generische Typparameter für Flexibilität bei verschiedenen Datentypen.
2
new TOutput[input.Length]
Initialisiert ein neues Array des Zieltyps mit derselben Größe wie der Input.
3
mapper(input[i])
Wendet die Transformationsfunktion auf jedes Element einzeln an.