Tablice parametryczne
Tablice parametryczne w języku C# są to klasy lub interfejsy, które pozwalają na przechowywanie różnych typów danych. Umożliwiają one tworzenie klas kontenerów, które są niezależne od typu danych przechowywanych.

Użycie takiej tablicy możliwe jest po zastoswaniu słowa kluczowego params
.
using System;
class Program
{
static void Wyswietl(params int[] liczby)
{
foreach (int liczba in liczby)
{
Console.Write(liczba + " ");
}
Console.WriteLine();
}
static void Main(string[] args)
{
Wyswietl(1, 2, 3, 4, 5);
Wyswietl(6, 7, 8);
Wyswietl(9, 10);
}
}
1 2 3 4 5
6 7 8
9 10

W powyższym przykładzie metoda "Wyswietl" przyjmuje tablicę parametryczną "liczby" jako ostatni argument i wyświetla każdy element tablicy na ekranie. W metodzie Main, przekazywane są różne liczby jako argumenty, które zostają zamienione na tablicę parametryczną i przekazane do metody "Wyswietl".
Jak widzisz, params pozwala na tworzenie bardziej elastycznych i uniwersalnych metod, które mogą przyjmować różne liczby argumentów.
using System;
class Program
{
static double Srednia(params double[] liczby)
{
double suma = 0;
for (int i = 0; i < liczby.Length; i++)
{
suma += liczby[i];
}
return suma / liczby.Length;
}
static void Main(string[] args)
{
Console.WriteLine(Srednia(2, 5, 6, 3, 10)); // 2 + 5 + 6 + 3 + 10 = 26 / 5 = 5.2
}
}

W tym przykładzie, metoda Srednia przyjmuje tablicę parametryczną "liczby" jako argument i zwraca średnią z podanych liczb.