0 Tage Serie
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;
}
// Usage
int[] 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.