# Methoden ```java //Deklaration einer Methode public static void printGreeting(String name) { System.out.printf("Hello %s", name); } ``` --- ## return Alle Methodendeklarationen mit einem Rückgabetypen **müssen** `return` enhalten. Alle Methodendeklaration ohne einen Rückgabetypen **können** `return` enthalten. ```java public static void printGreeting(String name) { if(name.isEmpty()) { return; } System.out.printf("Hello %s", name); } public static int getSquareArea(int sideLength) { return sideLength * sideLength; } ``` --- ## Methoden-Aufruf Methoden werden über ihren Identifier aufgerufen. Alle deklarierten Parameter **müssen** übergeben werden. ```java public static void main(String[] args) { int sides = 10; int result = getSpuareArea(sides); System.out.printf("The area of the square is %d", result); } public static int getSquareArea(int sideLength) { return sideLength * sideLength; } ``` --- ## Signatur Der Name einer Methode zusammen mit den Typen der Parameter. ```java // Signatur: getFirstWord(String) public static String getFirstWord(String text) { // ... } // Signatur: getSumBetween(int[], int, int) public static int getSumBetween(int[] array, int start, int end) { // ... } ``` --- ## Method overloading Es kann mehrere Methoden mit dem gleichen Identifier geben. Aber nicht mehrere Methoden mit der gleichen Signatur. ```java public static int getTriangleArea(int length) { // Berechnung der Fläche für ein Dreieck mit gleichlangen Seiten } public static int getTriangleArea(int a, int b, int c) { // Berechnung der Fläche für ein Dreieck mit unterschiedlichen Seiten } ``` --- ## Aufgaben * Implementiere die Methode `public static int getTriangleArea(int length)` aus der vorherigen Folie. * Implementiere die Methode `public static int getTriangleArea(int a, int b, int c)` aus der vorherigen Folie. * Implementiere die Methode `public static void printAverage(int a, int b, int c)` welche den Durchschnitt (mit 2 Nachkommastellen) der Parameter auf die Konsole ausgibt. * Implementiere die Methode `public static int digitSum(int input)` welche die Quersumme (Summe der einzelnen Ziffern) von `input` berechnet.