forked from Labore/PR2-L
1
0
Fork 0

bug fixes pretty print

main
Gerd Marmitt 2024-05-07 18:46:56 +02:00
parent c024ef0a4f
commit 5104e4ee3b
5 changed files with 149 additions and 133 deletions

28
.vscode/launch.json vendored
View File

@ -4,6 +4,34 @@
// Weitere Informationen finden Sie unter https://go.microsoft.com/fwlink/?linkid=830387 // Weitere Informationen finden Sie unter https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0", "version": "0.2.0",
"configurations": [ "configurations": [
{
"type": "java",
"name": "Teilnehmer4",
"request": "launch",
"mainClass": "Teilnehmer4",
"projectName": "PR2-L_ada963eb"
},
{
"type": "java",
"name": "Teilnehmer3",
"request": "launch",
"mainClass": "Teilnehmer3",
"projectName": "PR2-L_ada963eb"
},
{
"type": "java",
"name": "Teilnehmer2",
"request": "launch",
"mainClass": "Teilnehmer2",
"projectName": "PR2-L_ada963eb"
},
{
"type": "java",
"name": "Teilnehmer",
"request": "launch",
"mainClass": "Teilnehmer",
"projectName": "PR2-L_ada963eb"
},
{ {
"type": "java", "type": "java",
"name": "Wartezimmer", "name": "Wartezimmer",

View File

@ -3,7 +3,7 @@ import java.util.ArrayList;
public class Teilnehmer { public class Teilnehmer {
public static void teilnehmerListeImperativ(ArrayList<String> teilnehmerliste) public static void teilnehmerListeImperativ(ArrayList<String> teilnehmerliste)
{ {
for(String teilnehmer: teilnehmerliste) { for(String teilnehmer : teilnehmerliste) {
System.out.println("Teilnehmer: " + teilnehmer); System.out.println("Teilnehmer: " + teilnehmer);
} }
} }
@ -29,12 +29,10 @@ public class Teilnehmer {
teilnehmerliste.add("Zink"); teilnehmerliste.add("Zink");
teilnehmerliste.add("Kupfer"); teilnehmerliste.add("Kupfer");
System.out.println("*** Deklarativ:"); System.out.println("*** Imperativ:");
teilnehmerListeDeklarativ(teilnehmerliste);
System.out.println("*** Imperativ:");
teilnehmerListeImperativ(teilnehmerliste); teilnehmerListeImperativ(teilnehmerliste);
System.out.println("*** Deklarativ:");
teilnehmerListeDeklarativ(teilnehmerliste);
} }
} }

View File

@ -2,55 +2,50 @@ import java.util.ArrayList;
import java.util.function.Consumer; import java.util.function.Consumer;
public class Teilnehmer2 { public class Teilnehmer2 {
public static void main(String[] args) { public static void main(String[] args) {
ArrayList<String> teilnehmerliste = new ArrayList<>(5); ArrayList<String> teilnehmerliste = new ArrayList<>(5);
teilnehmerliste.add("Sommer"); teilnehmerliste.add("Sommer");
teilnehmerliste.add("Winter"); teilnehmerliste.add("Winter");
teilnehmerliste.add("Herbst"); teilnehmerliste.add("Herbst");
teilnehmerliste.add("Zink"); teilnehmerliste.add("Zink");
teilnehmerliste.add("Kupfer"); teilnehmerliste.add("Kupfer");
System.out.println("(1) Teilnehmerliste klassisch"); System.out.println("(1) Teilnehmerliste klassisch");
for(int i = 0; i < teilnehmerliste.size(); i++) for (int i = 0; i < teilnehmerliste.size(); i++) {
{ System.out.println(teilnehmerliste.get(i));
System.out.println(teilnehmerliste.get(i)); }
}
System.out.println("(2) Teilnehmerliste mit erweiterter for-Schleife"); System.out.println("(2) Teilnehmerliste mit erweiterter for-Schleife");
for(String name : teilnehmerliste) for (String name : teilnehmerliste) {
{ System.out.println(name);
System.out.println(name); }
}
System.out.println("(3) Teilnehmerliste mit forEach aus Java 8"); System.out.println("(3) Teilnehmerliste mit forEach aus Java 8");
// Anonyme innere Klasse mit internem Iterator // Anonyme innere Klasse mit internem Iterator
teilnehmerliste.forEach( teilnehmerliste.forEach(
new Consumer<String>() new Consumer<String>()
// anonyme Klasse implementiert Schnittstelle Consumer // anonyme Klasse implementiert Schnittstelle Consumer
{ {
// Methode der anonymen Klasse // Methode der anonymen Klasse
public void accept(String name) public void accept(String name) {
{ System.out.println(name);
System.out.println(name); }
} });
}
);
System.out.println("(4) Lambda-Ausdruck ersetzt innere Klasse"); System.out.println("(4) Lambda-Ausdruck ersetzt innere Klasse");
teilnehmerliste.forEach( teilnehmerliste.forEach(
(String name) -> System.out.println(name) ); (String name) -> System.out.println(name));
System.out.println("(5) Lambda-Ausdruck ohne Typangabe");
teilnehmerliste.forEach(
(name) -> System.out.println(name));
System.out.println("(5) Lambda-Ausdruck ohne Typangabe"); System.out.println("(6) Lambda-Ausdruck mit einem Parameter");
teilnehmerliste.forEach( teilnehmerliste.forEach(
(name) -> System.out.println(name) ); name -> System.out.println(name));
System.out.println("(6) Lambda-Ausdruck mit einem Parameter"); System.out.println("(7) Rumpf ersetzt durch Methodenreferenz");
teilnehmerliste.forEach( teilnehmerliste.forEach(System.out::println);
name -> System.out.println(name) ); }
System.out.println("(7) Rumpf ersetzt durch Methodenreferenz");
teilnehmerliste.forEach(System.out::println );
}
} }

View File

@ -2,40 +2,40 @@ import java.util.ArrayList;
import java.util.function.Consumer; import java.util.function.Consumer;
public class Teilnehmer3 { public class Teilnehmer3 {
public static void main(String[] args) { public static void main(String[] args) {
ArrayList<String> teilnehmerliste = new ArrayList<>(5); ArrayList<String> teilnehmerliste = new ArrayList<>(5);
teilnehmerliste.add("Sommer"); teilnehmerliste.add("Sommer");
teilnehmerliste.add("Winter"); teilnehmerliste.add("Winter");
teilnehmerliste.add("Herbst"); teilnehmerliste.add("Herbst");
teilnehmerliste.add("Zink"); teilnehmerliste.add("Zink");
teilnehmerliste.add("Kupfer"); teilnehmerliste.add("Kupfer");
System.out.println("(1) ???"); System.out.println("(1) ???");
teilnehmerliste teilnehmerliste
.stream() .stream()
.map(name -> name.toUpperCase()) .map(name -> name.toUpperCase())
.forEach(name -> System.out.print(name + " ")); .forEach(name -> System.out.print(name + " "));
System.out.println(); System.out.println();
System.out.println("(2) ???"); System.out.println("(2) ???");
teilnehmerliste teilnehmerliste
.stream() .stream()
.map(String::toUpperCase) .map(String::toUpperCase)
.forEach(name -> System.out.print(name + " ")); .forEach(name -> System.out.print(name + " "));
System.out.println(); System.out.println();
System.out.println("(3) ???"); System.out.println("(3) ???");
teilnehmerliste teilnehmerliste
.stream() .stream()
.map(name -> name.length()) .map(name -> name.length())
.forEach(laenge -> System.out.print(laenge + " ")); .forEach(laenge -> System.out.print(laenge + " "));
System.out.println(); System.out.println();
System.out.println("(4) ???"); System.out.println("(4) ???");
teilnehmerliste teilnehmerliste
.stream() .stream()
.filter(name -> name.startsWith("Z")) .filter(name -> name.startsWith("Z"))
.forEach(name -> System.out.print(name + " ")); .forEach(name -> System.out.print(name + " "));
} }
} }

View File

@ -5,46 +5,41 @@ import java.util.OptionalDouble;
public class Teilnehmer4 { public class Teilnehmer4 {
public static void main(String[] args) { public static void main(String[] args) {
ArrayList<String> teilnehmerliste = new ArrayList<>(5); ArrayList<String> teilnehmerliste = new ArrayList<>(5);
teilnehmerliste.add("Sommer"); teilnehmerliste.add("Sommer");
teilnehmerliste.add("Winter"); teilnehmerliste.add("Winter");
teilnehmerliste.add("Herbst"); teilnehmerliste.add("Herbst");
teilnehmerliste.add("Zink"); teilnehmerliste.add("Zink");
teilnehmerliste.add("Kupfer"); teilnehmerliste.add("Kupfer");
System.out.println("(1) Laengster Name?"); System.out.println("(1) Laengster Name?");
Optional<String> laengsterName = Optional<String> laengsterName = teilnehmerliste
teilnehmerliste .stream()
.stream() .reduce((name1, name2) -> name1.length() >= name2.length() ? name1 : name2);
.reduce((name1, name2) ->
name1.length() >= name2.length() ? name1 : name2);
laengsterName.ifPresent(name -> laengsterName.ifPresent(name -> System.out.println("Der laengste Name ist: " + name));
System.out.println("Der laengste Name ist: " + name));
System.out.println(); System.out.println();
System.out.println("(2) Summe der Laenge aller Namen: " + System.out.println("(2) Summe der Laenge aller Namen: " +
teilnehmerliste teilnehmerliste
.stream() .stream()
.mapToInt(name -> name.length()) .mapToInt(name -> name.length())
.sum()); .sum());
System.out.println(); System.out.println();
OptionalDouble durchschnittlicheLaenge = OptionalDouble durchschnittlicheLaenge = teilnehmerliste
teilnehmerliste .stream()
.stream() .mapToInt(name -> name.length())
.mapToInt(name -> name.length()) .average();
.average();
if (durchschnittlicheLaenge.isPresent())
System.out.println(durchschnittlicheLaenge);
teilnehmerliste.stream().filter(null); durchschnittlicheLaenge.ifPresent(avg -> System.out.println("(3) Durchschnittliche Laenge aller Namen: " + avg));
durchschnittlicheLaenge.ifPresent(avg -> }
System.out.println("(3) Durchschnittliche Laenge aller Namen: " + avg));
}
} }