2011-01-14 4 views
4

In VB kann ich eine Schleife schreiben, die immer mindestens einmal ausgeführt wird. Zum Beispiel:C#: When Schleifen mit der Bedingung am Ende

Do 
    [code] 
Loop While [condition] 

Gibt es eine Möglichkeit, das in C# zu tun?

+0

Someones gehen für die Peer-Druck-Abzeichen;) – SwDevMan81

+0

Nein, nur von VB zu C# wechseln. Ich habe mir die Zeit genommen, die fortgeschrittenen Sachen zu lernen, weil es interessant ist, aber ich benutze C# nicht genug, um die Standardsyntax in meinem Kopf zu behalten. –

+0

Werfen Sie einen Blick auf das Buch "C# in a Nutshell" (O'Reilly) als eine schnelle Einführung - es lehrt Sie nicht viel von dem Framework oder wie man programmiert, sondern deckt C# im Detail ab. – Richard

Antwort

13
do 
{ 
    // code 
} while (condition) 
-3

Alternativ

bool finished = false ; 
while (!finished) 
{ 
    // do something 
    finished = // evaluate a new foo 
} 

Ich habe noch nie ein großer Fan von do gewesen/während

+2

Tasche dein Gesicht, ich bin mir sicher! tun/während ist ein wenig sucky, aber das saugt härter! Übrigens hat es Pascal besser mit While/Do und Repeat/Together gemacht, die durch Benennung noch weiter differenziert werden. –

+2

Do/While macht deutlich, dass die Schleife mindestens einmal ausgeführt werden sollte. Ich verstehe deine Argumentation nicht, weil es die Dinge komplizierter macht, als sie sein müssen. –

+0

Das ist lustig. Ich habe hier einen echten Nerv getroffen. Du wirst mich für den Vorzug von switch-over markieren, wenn-dann-sonst? Sie sollten etwas Wichtigeres finden, um darüber nachzudenken. Sie weinen wahrscheinlich auch über 4 vs 3 vs 2 Leerzeichen Einrücken. –

-5
TopOfLoop: 
      // ... 
      if (condition) 
      { 
       goto TopOfLoop; 
      } 

Keine Karriere ist komplett ohne mindestens eine goto.

+2

Wow, wie schrecklich. –

+0

Wo ist dein Sinn für Humor? –

+0

So habe ich es ursprünglich codiert. Nicht absichtlich dagegen, der Goto wurde ursprünglich nur unter einem obskuren Fall genannt. Nachdem ich zwei oder drei weitere Gründe gefunden hatte, um es zu nennen, wurde mir klar, dass ich nur eine Schleife auf die harte Tour schrieb. –