Raz kolejny zwrócimy się w stronę Javy w celu przedstawienia bardzo przyjemnego i efektywnego zapisu. Umożliwia on zapisanie "rozciągliwej" funkcji, która będzie w stanie pobierać tyle parametrów ile tylko sobie zażyczycie. Jeden, pięć, nawet dwadzieścia. Taka implementacja jest możliwa jeżeli się wie o jej istnieniu i o sposobie zapisu. Pojęciem tym jest "zmienna liczba parametrów", sposób zapisu opisano poniżej.

ZMIENNA LICZBA PARAMETRÓW. SZCZEGÓŁY DODATKOWE

Tytułowa konstrukcja programistyczna pozwala na wstawienie dowolnej liczby argumentów wprowadzanych do podprogramu, czyli do funkcji. Jest to kolejna z tych rzeczy w programowaniu, która ma znacznie ułatwić pracę z wieloma wartościami naraz, ponieważ przeważnie wszystkie wprowadzane parametry są obsługiwane przez pętlę. Decyzja co potem można z tym zrobić należy do programisty. Prostym przykładem jest sumowanie podanych liczb bez użycia pętli czy innego "kontenera". Najczęstszą postacią jest postawienie w nawiasach obok nagłówka funkcji znaku wielokropka czy lepiej, trzech kropek ("..."). Większa część języków programowania wspiera możliwość zaimplementowania zmiennej liczby parametrów. Między innymi są to C, C++, C#, Python, JavaScript no i Java, którą teraz męczę w tej chwili po raz kolejny. Po takim wyjaśnieniu zaprezentuję fragment kodu źródłowego jak możemy utworzyć funkcję ze zmienną liczbą argumentów w języku Java.

Java i zmienna liczba parametrów

Zmienna liczba parametrów w języku Java jest tworzona poprzez znak trzech kropek ustawionych obok pomiędzy typem danych, a nazwą "rozciągliwego" parametru.

ZMIENNA LICZBA PARAMETRÓW. PRZYKŁAD KODU ŹRÓDŁOWEGO

Poniżej prezentuję kod źródłowy w języku Java przedstawiający jak wygląda zastosowanie takiej konstrukcji:

package pl.jason.variadic_function;

public class Main
{
	public static void main(String[] args)
	{
		sumNumbers(5, 7, 18);
		sumNumbers(4);
		sumNumbers(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
	}

	private static void sumNumbers(int ...numbers)			// <- zmienna liczba parametrów
	{
		int total = 0;

		for (int n = 0; n < numbers.length; ++n)
		{
			total += numbers[n];
		}

		System.out.println("Suma podanych liczb wynosi " + total);
	}
}

Kod przedstawia funkcję "main" od której zaczyna się inicjacja programu, a poniżej jest definicja funkcji "sumNumbers", której zadaniem jest zsumowanie wszystkich podanych liczb całkowitych i wypisanie wyniku za pomocą funkcji "println". Zmienna liczba parametrów "kryje się" w nawiasie obok nazwy funkcji i pomiędzy słowami "int" i "numbers". W przypadku Javy można również wstawić tablicę i za jej pomocą przekazywać argumenty, natomiast nie wolno Wam mieszać tablic z pojedynczymi argumentami.


Na tym się kończy artykuł o bardzo podstawowym zaprezentowaniu jak wygląda i jak działa zmienna liczba parametrów w języku Java.

PODOBNE ARTYKUŁY