Jason. Cała informatyka w jednym miejscu!

Raz kolejny zwrócimy się w stronę Javy w celu przedstawienia bardzo przyjemnego i efektywnego zapisu. Umożliwia on zapisanie "rozciągliwej" metody, 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" w języku Java (ang. "variadic function"), sposób zapisu opisuję w środku.

ZMIENNA LICZBA PARAMETRÓW W JĘZYKU JAVA. NA CZYM TO DOKŁADNIE POLEGA?

Tytułowa konstrukcja programistyczna pozwala na wstawienie dowolnej liczby argumentów wprowadzanych do podprogramu, czyli do metody. 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". Zmienna liczba parametrów nada się doskonale do tego. Najczęstszą postacią jest postawienie w nawiasach obok nagłówka metody 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ą męczę w tej chwili po raz kolejny. Po takim wyjaśnieniu zaprezentuję fragment kodu źródłowego jak możemy utworzyć metodę ze zmienną liczbą argumentów w języku Java.

Logo języka Java

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.

Źródło: Wikipedia

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:

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);
	}
	
	// zmienna liczba parametrów w języku Java
	private static void sumNumbers(int ...numbers) {
		int total = 0;

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

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

Kod przedstawia statyczną metodę "main" od której zaczyna się inicjacja programu, a poniżej jest definicja metody "sumNumbers" której zadaniem jest zsumowanie wszystkich podanych liczb całkowitych i wypisanie wyniku za pomocą metody "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 bezkarnie wstawianie tylu parametrów do metody ile tylko chcecie.

PODOBNE ARTYKUŁY