For-Schleifen und Varargs

heffernan

Mitglied
Hallo,

habe eben im Netz das folgende Codefragment gefunden.

Java:
	static public int add (int... I){
		int sum=0;
	    for (int i : I) 
	    	sum+=i;	    
	    return sum;
	}

Ich kannte diese Schreibweise bis dato nicht und mir ist nicht ganz klar, welchen Vorteil sie gegenüber

Java:
	static public int add (int [] I){
		int sum=0;
	    for (int i : I) 
	    	sum+=i;	    
	    return sum;
	}

hat.

lG
 
Wenn ich das richtig verstanden habe (ich lerne selbst gerade erst), dann ist der Vorteil, dass du im zweiten Fall auf jeden Fall ein Array übergeben musst, wenn du die Methode aufrufst. Im Ersten Fall kannst du aber auch eine beliebige Anzahl von einzelnen int-Werten übergeben.

Also

Java:
add(3, 5, 12, 42);

versus

Java:
add(new int[]{3, 5, 12, 42});
 

Neue Themen


Zurück
Oben