7. Funktionen

Einfach gesagt ist eine Funktion eine Zusammensetzung von mehreren unterschiedlichen Befehlen.
Willst du zum Beispiel öfters eine Konsolenausgabe machen, aber dir es zu aufwändig ist diesen Code immer wieder zu schreiben, so wird dir eine Funktion sehr hilfreich sein.

7.1 Meine erste Funktion

Schauen wir uns dazu zuerst mal den Aufbau einer Funktion an:

public void sagHallo() {
System.out.println("Hallo.");
}


Diese Funktion ist eine leere Funktion, da sie nichts zurückgibt, sondern direkt eine Ausgabe macht, weshalb da auch void verwendet wurde. Will man zum Beispiel einen String zurückgeben, wäre anstelle von void String verwendet worden und zusätzlich müsste man in der Funktion einen String-Wert mit return zurückgeben. Weiteres dazu wird später erklärt. Nun zurück zu dieser Funktion. Der Funktionsname dieser Funktion ist sagHallo. Sie gibt einfach ein Hallo auf der Konsole aus. Lässt du diese Funktion einfach so, wird sie nichts tun. Denn damit sie ihre Aufgabe erfüllt, musst du sie jedes Mal aufrufen. Dies tut man, indem man den Funktionsnamen mit den Klammern schreibt: 

sagHallo();


7.2 Funktion mit Parameter

Nun werden wir uns eine Funktion mit einem Übergabeparameter anschauen. Der Übergabeparameter ist einfach eine Variable eines bestimmten Datentyps, der du jedes Mal, wenn du die Funktion aufrufst, einen Wert übergeben musst. Hier eine Funktion mit einem Parameter:


public void sagHallo(String name) {
System.out.println("Hallo " + name + ", du hast eine Funktion aufgerufen.");
}

Wie du sehen kannst, steht hier nach dem Funktionsnamen sagHallo etwas in Klammern. Genau das ist der Übergabeparameter. Hier wurde dafür der Datentyp String benutzt. Das heisst, sobald du die Funktion aufrufst, musst du ihr einen String-Wert übergeben. Ansonsten wird sie ihre Aufgabe nicht erfüllen können. Das ist wie beim Reparieren eines Handys. Der Reparateur kann deinen Auftrag nicht erledigen, wenn du dein Handy ihm nicht überreichst.
Diese Funktion macht auch eine Konsolenausgabe, wobei aber der übergebene String-Wert auch ausgegeben wird. Beim Aufrufen dieser Funktion gibt es nur einen kleinen Unterschied zu deiner ersten Funktion ohne Übergabeparameter. Denn hier musst du logischerweise einen Wert mitgeben:

sagHallo("Max Mustermann");

7.3 Funktion mit Rückgabewert

Eine Funktion mit einem Rückgabewert, führt die Aufgabe nicht sofort aus, wie wir es bei den beiden anderen Funktion gesehen haben, sondern er verarbeitet etwas und überreicht dir das Endprodukt.
Schauen wir uns dazu eine solche Funktion an:

public int verdopple(int zahl) {
return zahl * 2;
}

Die Funktion verdopple verdoppelt, wie der Funktionsname schon sagt, eine Zahl, die man beim Aufrufen der Funktion übergeben muss (-> es hat einen Übergabeparameter!). Das Ergebnis wird jedoch nicht direkt irgendwo ausgegeben. Denn wie du sehen kannst steht bei dieser Funktion nicht mehr void vor dem Funktionsnamen, sondern int. Das bewirkt, dass die Funktion einen Wert des Datentyps Integer wieder zurückgibt. Dies tut sie mit return.
Willst du jetzt das Ergebnis dieser Funktion auf der Konsole ausgeben, so musst du einfach die Funktion innerhalb einer Konsolenausgabe aufrufen und dabei einen Int-Wert übergeben, denn sonst kann die Funktion ja gar nichts verdoppeln:

System.out.println(verdopple(5));

 

Stelle uns deine Frage


Julien Rösch


 

Amazon

 

E-Book

 

Gefällt dir CodeStarter?