JaJava · Lesson 4 of 9
Methods
In Java, functions are called methods and must live inside classes. A small indignity. Get used to it.
Java
public class Methods {
// Static method — called on class, not instance
public static int add(int a, int b) {
return a + b;
}
// Method overloading — same name, different params
public static double add(double a, double b) {
return a + b;
}
public static String add(String a, String b) {
return a + b;
}
// Varargs — variable number of arguments
public static int sum(int... numbers) {
int total = 0;
for (int n : numbers) total += n;
return total;
}
// Recursive method
public static long factorial(int n) {
if (n <= 1) return 1;
return n * factorial(n - 1);
}
// Return multiple values via array or object
public static int[] minMax(int[] arr) {
int min = arr[0], max = arr[0];
for (int n : arr) {
if (n < min) min = n;
if (n > max) max = n;
}
return new int[]{min, max};
}
public static void main(String[] args) {
System.out.println(add(3, 4)); // 7 (int version)
System.out.println(add(3.14, 2.71)); // 5.85 (double version)
System.out.println(add("Hello", "!")); // Hello! (String version)
System.out.println(sum(1, 2, 3, 4, 5)); // 15
System.out.println(factorial(10)); // 3628800
int[] result = minMax(new int[]{5, 2, 8, 1, 9});
System.out.println("Min: " + result[0] + ", Max: " + result[1]);
}
}