This commit is contained in:
2025-04-27 18:06:29 +02:00
parent acff52f5b2
commit d9b7b19543
8 changed files with 71 additions and 1 deletions

View File

@@ -3,6 +3,7 @@ package UE14_130225_Streams1;
import java.util.Random;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.stream.IntStream;
import java.util.stream.Stream;
public class UE14_Streams1 {
public static void main(String[] args) {

View File

@@ -37,7 +37,9 @@ public class UE15_Streams2 {
}
public static String createRandoString(String vorrat, int len) {
return IntStream.range(0, len).mapToObj(_ -> String.valueOf(vorrat.charAt(new Random().nextInt(vorrat.length())))).collect(Collectors.joining());
return IntStream.range(0, len).mapToObj(
_ -> String.valueOf(vorrat.charAt(new Random().nextInt(vorrat.length())))).collect(Collectors.joining());
}
public static int[] deleteEquals(int[] ia) {

View File

@@ -155,6 +155,7 @@ public class UE16_Streams3 {
return tdfWinners.stream().collect(Collectors.groupingBy(Winner::getNationality, Collectors.toList()));
}
public static Map<String, Long> winsByNationalityCounting() {
return tdfWinners.stream().collect(Collectors.groupingBy(Winner::getNationality, Collectors.counting()));
}

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,23 @@
package UE19_220425_Threads.nothread;
public class Konto {
private int kontostand;
public Konto() {
this.kontostand = 0;
}
public int getKontostand() {
return kontostand;
}
public void setKontostand(int kontostand) {
this.kontostand = kontostand;
}
public void add(int betrag) {
int wert = getKontostand();
wert = wert + betrag;
setKontostand(wert);
}
}

View File

@@ -0,0 +1,23 @@
package UE19_220425_Threads.nothread;
public class Main {
public static void main(String[] args) {
Konto a = new Konto();
Konto b = new Konto();
Konto c = new Konto();
Ueberweiser ab = new Ueberweiser(a, b);
Ueberweiser bc = new Ueberweiser(b, c);
Ueberweiser ca = new Ueberweiser(c, a);
// long start = System.currentTimeMillis();
ab.run();
bc.run();
ca.run();
// System.out.println(System.currentTimeMillis() - start + "ms");
System.out.println("A: " + a.getKontostand());
System.out.println("B: " + b.getKontostand());
System.out.println("C: " + c.getKontostand());
}
}
// 81ms

View File

@@ -0,0 +1,20 @@
package UE19_220425_Threads.nothread;
public class Ueberweiser {
private static final int anzahl = 10_000_000;
private static final int betrag = 10;
private final Konto von;
private final Konto nach;
public Ueberweiser(Konto von, Konto nach) {
this.von = von;
this.nach = nach;
}
public void run() {
for (int i = 0; i < anzahl; i++) {
von.add(-betrag);
nach.add(betrag);
}
}
}