diff --git a/src/UE13_110225_Lambdas/Interface-Lambda.pdf b/src/UE13_110225_Lambdas/Interface-Lambda.pdf new file mode 100644 index 0000000..cfeefae Binary files /dev/null and b/src/UE13_110225_Lambdas/Interface-Lambda.pdf differ diff --git a/src/UE13_110225_Lambdas/UE13_Lambdas.java b/src/UE13_110225_Lambdas/UE13_Lambdas.java new file mode 100644 index 0000000..856a831 --- /dev/null +++ b/src/UE13_110225_Lambdas/UE13_Lambdas.java @@ -0,0 +1,57 @@ +package UE13_110225_Lambdas; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.List; +import java.util.function.UnaryOperator; + +public class UE13_Lambdas { + public static void main(String[] args) { + List list = Arrays.asList(1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 20.0, 30.0); + print(hauptworte(new ArrayList<>(Arrays.asList(null, "Hugo", "HTL", "HTL3R", "", "Haus-Boot", "SEW", "Softwareentwicklung", "a")))); + System.out.println("\n"); + print(hauptworte(new ArrayList<>(Arrays.asList("Hallo", "du", "Keiko", "DU", "MensH", ".", "async1w19", "Aast1w19")))); + System.out.println(mult(list, 5)); + System.out.println(mult(list, -1)); + System.out.println(mult(list, -2)); + System.out.println(func(list, a -> a + 1)); + System.out.println(numerisch("12", "Wappler", "8", "-5", "8", "Hugo", "-9", "-10", "Hugo", "-10", "7")); + System.out.println(numerisch("12", "Wappler", "8", "-5", "8", "Hugo", "-9", "-10", "Hugo", "-10", "7", "10.5", "10,5")); + } + + public static void print(Collection collection) { + collection.forEach(System.out::println); + } + + public static Collection hauptworte(Collection worte) { + return worte.stream().filter(w -> w != null && !w.isEmpty() && w.matches("[A-Z][A-Za-z]*")).toList(); + } + + public static List mult(List zahlen, double faktor) { + return zahlen.stream().map(z -> z * faktor).toList(); + } + + public static List func(List zahlen, UnaryOperator op) { + return zahlen.stream().map(op).toList(); + } + + public static List numerisch(String... elements) { + String p = "^-?\\d+$"; +// Methode 1: +// Arrays.sort(elements, (o1, o2) -> { +// if (o1.matches(p) && o2.matches(p)) return Integer.compare(Integer.parseInt(o1), Integer.parseInt(o2)); +// else if (o1.matches(p)) return -1; +// else if (o2.matches(p)) return 1; +// else return o1.compareTo(o2); +// }); +// return List.of(elements); + +// Methode 2 +// Arrays.sort(elements, (o1, o2) -> o1.matches(p) && o2.matches(p) ? Integer.compare(Integer.parseInt(o1), Integer.parseInt(o2)) : o1.matches(p) ? -1 : o2.matches(p) ? 1 : o1.compareTo(o2)); +// return List.of(elements); + +// Methode 3 + return Arrays.stream(elements).sorted((o1, o2) -> o1.matches(p) && o2.matches(p) ? Integer.compare(Integer.parseInt(o1), Integer.parseInt(o2)) : o1.matches(p) ? -1 : o2.matches(p) ? 1 : o1.compareTo(o2)).toList(); + } +} \ No newline at end of file diff --git a/src/UE14_130225_Streams/SEW3 UE14 2024 Streams for Beginners.pdf b/src/UE14_130225_Streams/SEW3 UE14 2024 Streams for Beginners.pdf new file mode 100644 index 0000000..324e866 Binary files /dev/null and b/src/UE14_130225_Streams/SEW3 UE14 2024 Streams for Beginners.pdf differ diff --git a/src/UE14_130225_Streams/TH_Streams 2024 Part 1.pdf b/src/UE14_130225_Streams/TH_Streams 2024 Part 1.pdf new file mode 100644 index 0000000..08631f0 Binary files /dev/null and b/src/UE14_130225_Streams/TH_Streams 2024 Part 1.pdf differ diff --git a/src/UE14_130225_Streams/UE14_Streams.java b/src/UE14_130225_Streams/UE14_Streams.java new file mode 100644 index 0000000..aa54467 --- /dev/null +++ b/src/UE14_130225_Streams/UE14_Streams.java @@ -0,0 +1,4 @@ +package UE14_130225_Streams; + +public class UE14_Streams { +}