1. Fordított hurok

A Java-nak van egy másik típusú whileciklusa - a do-whileciklus. Nagyon hasonlít a közönséges whilehurokhoz, és szintén csak két részből áll: egy "feltételből" és egy "huroktestből". A ciklustörzs újra és újra végrehajtásra kerül mindaddig, amíg a feltétel teljesül true. Általában a do-whilehurok így néz ki:

do
   statement;
while (condition);

vagy

do
{
   block of statements
}
while (condition);

Cikk esetén whilea végrehajtás sorrendje: feltétel , huroktest , feltétel , huroktest , feltétel , huroktest , ...

A do-whilehurok esetében azonban ez kissé eltér: huroktest , feltétel , huroktest , feltétel , huroktest , ...

Valójában az egyetlen különbség a whilehurok és do-whilea ciklus között az a tény, hogy a ciklustörzs legalább egyszer végrehajtásra kerül do-while.


do-while2. A hurok használatának előnyei

Alapvetően az egyetlen különbség a do-whileciklus és a whileciklus között az, hogy a ciklus törzsedo-while legalább egyszer végrehajtásra kerül.

Általában do-whileakkor használunk hurkot, ha nincs értelme ellenőrizni a hurok állapotát, ha a huroktörzs nincs végrehajtva. Például, ha bizonyos számításokat hajtanak végre a ciklustörzsben , majd a feltételben használnak .

Példa:

A program beolvassa a sorokat a billentyűzetről a szó exitbeírásáig

míg csinálni, miközben
String s;
while (true)
{
   s = console.nextLine();
   if (s.equals("exit"))
      break;
}
String s;
do
{
   s = console.nextLine();
}
while (!s.equals("exit"));

A ciklusban lévő breakés continueutasítások do-whileugyanúgy működnek, mint a ciklusban while.


3. Cikkek összehasonlítása do-while: Java vs Pascal

A Pascalnak ismét van egy analógja a huroknak do-while, de ezt huroknak hívják repeat-until. Ezenkívül kissé eltér a do-whilehuroktól. A ciklusban repeat-untila feltétel jelzi, hogy mikor kell kilépni a ciklusból, nem pedig azt, hogy mikor kell folytatni.

Példák:

Pascal Jáva
Repeat
   ReadLn(s);
Until s = 'exit';
String s;
do {
   s = console.nextLine();
}
while ( !s.equals("exit") );

A Java-hoz képest, ahogy Pascal ezt ábrázolja, kifejezetten szép. Pascal példáival kell kezdenünk, különben nevetni fogsz.


2
Feladat
Java Syntax,  szintlecke
Zárt
Cat's finalize method
It's difficult to accidentally lose an object: as long as you have even one reference to an object, it remains alive. But if not, then the object is approached by the finalize method, an unpredictable assassin that works for the Java machine. Let's create this method ourselves: protected void finalize() throws Throwable. The last two words will become clear a little later.