Warum erlaubt ein while-Loop keine Variablen-Declaration wie der for-Loop..?

sirbender

Top Contributor
Hallo,

ich finde den while-Loop sehr angenehm. Allerdings erlaubt er nicht die Declaration einer Variablen die einmalig beim Loop-Start initiert wird (und nicht in jedem Loop-Durchlauf) und welche nur im Loop und nicht ausserhalb sichtbar ist.

Der For Loop erlaubt das. Warum nicht der While-Loop? Oder habe ich was uebersehen?!
 

Joose

Top Contributor
Nein übersehen hast du nichts. Die while-Schleife ist einfach so definiert und das passt auch so. Für diese Bedürfnisse gibt es dann eben die for-Schleife.

Was dir vielleicht bis jetzt noch nicht aufgefallen ist:
Es ist möglich jede for-Schleife in eine while-Schleife umzuwandeln aber auch aus jeder while-Schleife eine for-Schleife zu machen.

Kleiner Hinweis:
Man kann zwar beiden Schleifen in die jeweils andere "umwandeln" aber trotzdem sollte man für jede den richtigen Einsatz finden.
for-Schleife: Diese Schleife solltest du verwenden wenn du weißt wieviele Durchläufe gemacht werden (fixe Anzahl, Größe der Liste, ....)
while-Schleife: Diese Schleife solltest du verwendne wenn du nicht weißt wieviele Durchläufe gemacht werden (für jedes Element der Liste, ....)
 

sirbender

Top Contributor
"Das passt auch so" ?

Ich finde ja ein bischen nervig, dass ich eine Variable die ich EXCLUSIV im while-Loop nutze AUSSERHALB des while-Loop definieren und einen Wert zuweisen muss.

Der For-Loop zeigt, dass es nicht noetig sein sollte die Variable ausserhalb des Loop-Scopes zu definieren.
 

Thallius

Top Contributor
Wenn es nach Geschmack ginge würde es bestimmt nicht beide Arten von Schleifen geben. Oder glaubst Du die Entwickler der Sprache haben sich gedacht wir machen da für jeden Programmierer-Geschmack mal was eigenes?

Jede Schleife hat ihre speziellen Vor- und Nachteile und sollten je nach Verwendungszweck entsprechend eingesetzt werden.

Gruß

Claus
 

Joose

Top Contributor
Ich finde ja ein bischen nervig, dass ich eine Variable die ich EXCLUSIV im while-Loop nutze AUSSERHALB des while-Loop definieren und einen Wert zuweisen muss.

Jein ... die einzige Variable die ich normalerweise außerhalb der while-Schleife erstelle ist die für die Abbruchbedingung.
Und das passt so, weil ich die while-Schleife auch von "außerhalb" stoppen können sollte (wichtig bei Threads und ähnlichem) damit sie nicht endlos läuft.
Eine for-Schleife an sich läuft nur eine bestimmte Anzahl an Durchläufen lang (solange kein Fehler eingebaut bzw. Blödsinn geschrieben wurde :p) und ist dann somit von selbst fertig.

Der For-Loop zeigt, dass es nicht noetig sein sollte die Variable ausserhalb des Loop-Scopes zu definieren.

Aber die for-Schleife ist eben (meiner Meinung) nach für einen anderen Anwendungsfall gedacht :)

Ja. Ist halt Geschackssache. Mein Gehirn ist total auf while verdrahtet ;)

Also ich glaube es kommt die Zeit da wirst du alle Arten von Schleifen zu schätzen lernen und je nach Gebiet eine andere anwenden.

Und automatische Umwandlung (z.B. Eclipse) von for nach while oder umgekehrt geht eben nicht.

Sollte aber kein Problem sein schnell mal selbst von while auf for umzustellen ;)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Collections Sind Subklassen-Objekte in Listen mit Generics erlaubt? Java Basics - Anfänger-Themen 16
K Erste Schritte switch - Warum sind long/float/double/... nicht erlaubt? Java Basics - Anfänger-Themen 5
R Compiler-Fehler Operator + nicht erlaubt? Java Basics - Anfänger-Themen 6
Semox OOP ArrayList erlaubt keine Leeren Methode Java Basics - Anfänger-Themen 6
C Source Veränderungen-Erlaubt? Java Basics - Anfänger-Themen 27
S Festlegen, dass Subklasse nicht erlaubt ist? Java Basics - Anfänger-Themen 3
V String überprüfen, nur Punkte und Zahlen erlaubt Java Basics - Anfänger-Themen 7
G Zugriff erlaubt? Java Basics - Anfänger-Themen 9
P JSpinner erlaubt Buchstabeneingabe? Java Basics - Anfänger-Themen 6
R switch erlaubt keine float/double-Rechnung Java Basics - Anfänger-Themen 5
M While-Schleife mit Wartezeit Java Basics - Anfänger-Themen 15
Ranger229 Endless loop in while Schleife Java Basics - Anfänger-Themen 3
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
Ostkreuz While Schleife neustarten Java Basics - Anfänger-Themen 20
S Erste Schritte do-while Schleife Münzwurf Java Basics - Anfänger-Themen 1
S while Schleife Taschenrechner Java Basics - Anfänger-Themen 1
P Best Practice While loop schleife Java Basics - Anfänger-Themen 5
S Erste Schritte While Schleifen Java Basics - Anfänger-Themen 11
A Erste Schritte Aufgabe mit while Schleife Java Basics - Anfänger-Themen 11
R do while Schleife Verständnisfrage Java Basics - Anfänger-Themen 2
Say Fehlenden Code finden in einer while-Schleife? Java Basics - Anfänger-Themen 11
Say do-While Code Ausführung Java Basics - Anfänger-Themen 3
Say do-while Syntak Java Basics - Anfänger-Themen 3
A Return in While Schleife Java Basics - Anfänger-Themen 6
M Erste Schritte While Schleife / Ausgabe von buchstabe & ASCII Wert Java Basics - Anfänger-Themen 4
J do..while Schleife Java Basics - Anfänger-Themen 14
W Wiederkehrende Konsolen-Anzeige mit do-While?! Java Basics - Anfänger-Themen 33
X Enum Abfrage ohne if, for, while oder switch Java Basics - Anfänger-Themen 21
java-starter Erste Schritte Mit While Schleifen Programme schreiben Java Basics - Anfänger-Themen 4
berserkerdq2 Brauche ich while != -1, wenn ich immer einen BufferedReader verwende? Java Basics - Anfänger-Themen 8
B Zuweisungen und Methodenaufrufe in Bedingung der while Schleife? Java Basics - Anfänger-Themen 2
JavaBeginner22 Würfeln bis 6 while Schleife Java Basics - Anfänger-Themen 13
G while.next() Verständnisfrage Java Basics - Anfänger-Themen 16
L while Schleife mit 2 Bedingung endet nicht Java Basics - Anfänger-Themen 3
D Array mit while-schleife Java Basics - Anfänger-Themen 12
B do while Schleife Java Basics - Anfänger-Themen 3
R While-Loop der die Einträge eines Arrays in umgekehrter Reihenfolge anzeigt Java Basics - Anfänger-Themen 3
SergioCK Do while Schleife wiederholen Java Basics - Anfänger-Themen 14
Informatikf Methoden While Schleife Java Basics - Anfänger-Themen 3
M While Schleife? Java Basics - Anfänger-Themen 4
C Sind die while-Schleifen richtig in for-Schleifen ersetzt worden? Java Basics - Anfänger-Themen 8
Poppigescorn Quersumme Berechnen mit einer While Schleife Java Basics - Anfänger-Themen 13
Zwanglos Warum wird nur die erste Zeile im while Block ausgeführt? Java Basics - Anfänger-Themen 8
M Wie kann ich Werte die in einer While Schleife sind weiter genutzt werden? Java Basics - Anfänger-Themen 7
H Kann eine while-Schleife ein Programm blockieren? Java Basics - Anfänger-Themen 8
O Methode in while-Schleife aufrufen geht nur beim ersten Mal Java Basics - Anfänger-Themen 2
A Wie schaffe ich das eine while Schleife addiert danach subtrahirt? Java Basics - Anfänger-Themen 1
Aeon Erste Schritte Preise berechnen mit do-while Java Basics - Anfänger-Themen 9
J for /while Schleife Java Basics - Anfänger-Themen 5
A While Schleife - buubelsort methode Java Basics - Anfänger-Themen 2
J Wie kann ich hier eine While schleife einbauen? Java Basics - Anfänger-Themen 3
S While-Schleife geht in Endlosschleife über, warum? Java Basics - Anfänger-Themen 6
M While-Schleifen-Fehler Java Basics - Anfänger-Themen 4
S Do-While-Schleife Java Basics - Anfänger-Themen 2
S While Schleife Java Basics - Anfänger-Themen 4
S Do-While Schleife Java Basics - Anfänger-Themen 6
J Von While zu for Java Basics - Anfänger-Themen 42
G While/If Programm Java Basics - Anfänger-Themen 2
L String in Do-While-Schleife Abbruchkriterium Java Basics - Anfänger-Themen 1
CptK Methoden While-Schleife so lange ausführen, wie Methode etwas zurückgibt Java Basics - Anfänger-Themen 2
G Flussdiagramm-Do while Java Basics - Anfänger-Themen 4
G If / While Programm (Datei auslesen) Java Basics - Anfänger-Themen 6
B Verschachtelung von For-Schleife in While Schleife Java Basics - Anfänger-Themen 14
G while schleife Java Basics - Anfänger-Themen 11
G while schleife mit array Java Basics - Anfänger-Themen 12
L Scanner schließen in While-Schleife? Java Basics - Anfänger-Themen 2
I Do-While / Kalkulator / Bitte um Hilfe Java Basics - Anfänger-Themen 9
G While schleife Java Basics - Anfänger-Themen 2
mor16Euro Erste Schritte Wie nennt man eine While oder For schleife die nie Ausgeführt wird Java Basics - Anfänger-Themen 5
C Verständnisfrage bezüglich der Do-While Schleife Java Basics - Anfänger-Themen 9
B OOP While Schleife läuft Endlos durch externen aufruf Java Basics - Anfänger-Themen 2
N while Schleife wird nicht beendet, obwohl Sie hätte breaken sollen Java Basics - Anfänger-Themen 4
B mehrere Werte mit scanner und while schleife einlesen, max berechnen bzw addieren Java Basics - Anfänger-Themen 2
D While Schleife bei Bedarf durch Eingabe stoppen Java Basics - Anfänger-Themen 15
O Erste Schritte Zahlendreieck mit While Java Basics - Anfänger-Themen 2
D Break Sprungmarken Problem einer While True in While True Java Basics - Anfänger-Themen 6
A Erste Schritte while-Schleife Java Basics - Anfänger-Themen 38
W While-Loop unterbrechen Java Basics - Anfänger-Themen 4
X While Do schleife funtioniert nicht Java Basics - Anfänger-Themen 5
J 2 "while"-Anweisungen in einer do-Schleife? Java Basics - Anfänger-Themen 4
W while Schleife und Bedingung Java Basics - Anfänger-Themen 11
T While Schleife funktioniert nicht Java Basics - Anfänger-Themen 14
J Input/Output Strings aneinander reihen mit while schleife Java Basics - Anfänger-Themen 25
M Methoden while liefert nur den ersten Datensatz Java Basics - Anfänger-Themen 12
S Try-Catch in Verwendung einer while Schleife Java Basics - Anfänger-Themen 2
P a cannot be resolved bei einer do while Schleife Java Basics - Anfänger-Themen 1
J While Schleife Java Basics - Anfänger-Themen 19
S While-Schleifen Ausgabe als String? Java Basics - Anfänger-Themen 1
L Taschenrechner mit switch und while funktioniert noch nicht richtig Java Basics - Anfänger-Themen 22
Z Return in While-Schleife Java Basics - Anfänger-Themen 7
N Methode mit While-Schleife und If-Bedingung und Array-Initialisierung Java Basics - Anfänger-Themen 4
V Erste Schritte Habe Fragen zu der For und While Schleife als auch Inkrement und Dekrement Java Basics - Anfänger-Themen 4
helldunkel While Schleife trotz false Java Basics - Anfänger-Themen 4
E Threads Thread in While-Schleife nur einmal starten Java Basics - Anfänger-Themen 2
M Erste Schritte while boolean=false läuft nur bei true??? Java Basics - Anfänger-Themen 23
R While-Schleife macht nicht was sie soll Java Basics - Anfänger-Themen 24
b1ck while-Schleife Java Basics - Anfänger-Themen 10
b1ck Integer initialisieren bei do-while-Schleife Java Basics - Anfänger-Themen 11
kilopack15 DoWhile-Schleife als While-Schleife darstellen Java Basics - Anfänger-Themen 9
A While-Schleife funktioniert nicht! Java Basics - Anfänger-Themen 33

Ähnliche Java Themen

Neue Themen


Oben