Ungeeigneter Schleifentyp: Unterschied zwischen den Versionen

Aus Programmieren-Wiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(3 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Bewertungsrichtlinie
{{CategoryBlock
|baustelle=Ja
|Baustelle=Ja
|blatt=1
|Java Grundlagen=Nein
|schweregrad=leicht
|Organisation=Nein
|weiterlesen=Ja
|Programmierstil=Nein
|seite=Komplexität
|Bewertungsrichtlinie=Ja
|blattAnnotation=2
|blattAbzug=3
}}
{{Inhaltsblock
|vorher====Beschreibung===
Java stellt verschiedene Schleifentypen bereit: while-Schleifen, do-while-Schleifen, for-Schleifen & for-each-Schleifen. Jeder von diesen Typen kann grundsätzlich die gleiche Aufgabe übernehmen. Dennoch spiegelt die konkrete Wahl Eigenschaften der Verwendung wider.
 
* While-Schleifen eignen sich, wenn lediglich ein boolescher Ausdruck als Bedingung existiert
* Do-While-Schleifen im Falle von einem gewährleisteten ersten Durchlauf.
* For-Schleifen sind geschickt für Schleifen mit klar definierter Vor- und Nachbereitung, wie es bei Zählvariablen/Indexdurchläufen der Fall ist.
*Muss ein Array oder eine Liste komplett durchlaufen werden ohne explizit benötigten Index so ist eine for-each-Schleife zu verwenden.
}}
{{Inhaltsblock
|color=red
|vorher=Negativbeispiel:
|Beispiel=Person[] people = new Person[10];
// We imagine this array is filled after this point
for (int i = 0; i < people.length; i++) {
System.out.print(people[i].getName());
}
|beispielname=UngeeigneterSchleifentypBad
|nachher=Hier iterieren wir über die Indizes des Arrays obwohl wir nur die Objekte referenzieren wollen.
}}
{{Inhaltsblock
|color=green
|vorher=Positivbeispiel:
|Beispiel=Person[] people = new Person[10];
// We imagine this array is filled after this point
for (Person person : people) {
System.out.print(person.getName());
}
|beispielname=UngeeigneterSchleifentypGood
|nachher=Hier benutzen wir einen sogenannten "enhanced-for-loop" der Java API. Dieser iteriert direkt über die Objekte, ohne erst über die Indizes zu iterieren, was den Code nicht nur besser lesbar, sondern auch kompakter und einfacher verständlich macht.
}}
}}

Aktuelle Version vom 14. Oktober 2025, 09:59 Uhr

🚧 Diese Seite befindet sich in Bearbeitung 🚧
🤓 Diese Seite ist eine Bewertungsrichtlinie, die ab Blatt 2 annotiert und ab Blatt 3 abgezogen wird. 🤓

Beschreibung

Java stellt verschiedene Schleifentypen bereit: while-Schleifen, do-while-Schleifen, for-Schleifen & for-each-Schleifen. Jeder von diesen Typen kann grundsätzlich die gleiche Aufgabe übernehmen. Dennoch spiegelt die konkrete Wahl Eigenschaften der Verwendung wider.

  • While-Schleifen eignen sich, wenn lediglich ein boolescher Ausdruck als Bedingung existiert
  • Do-While-Schleifen im Falle von einem gewährleisteten ersten Durchlauf.
  • For-Schleifen sind geschickt für Schleifen mit klar definierter Vor- und Nachbereitung, wie es bei Zählvariablen/Indexdurchläufen der Fall ist.
  • Muss ein Array oder eine Liste komplett durchlaufen werden ohne explizit benötigten Index so ist eine for-each-Schleife zu verwenden.

Negativbeispiel:

Person[] people = new Person[10];
// We imagine this array is filled after this point
for (int i = 0; i < people.length; i++) {
	System.out.print(people[i].getName());
}
Hier iterieren wir über die Indizes des Arrays obwohl wir nur die Objekte referenzieren wollen.

Positivbeispiel:

Person[] people = new Person[10];
// We imagine this array is filled after this point
for (Person person : people) {
	System.out.print(person.getName());
}
Hier benutzen wir einen sogenannten "enhanced-for-loop" der Java API. Dieser iteriert direkt über die Objekte, ohne erst über die Indizes zu iterieren, was den Code nicht nur besser lesbar, sondern auch kompakter und einfacher verständlich macht.