1. リバースループ

Java には別の種類のwhileループ (do-whileループ) があります。これは通常のwhileループと非常に似ており、「条件」と「ループ本体」の 2 つの部分のみで構成されます。ループ本体は、条件が満たされている限り繰り返し実行されますtrue。一般に、do-whileループは次のようになります。

do
   statement;
while (condition);

また

do
{
   block of statements
}
while (condition);

ループの場合while、実行順序は次のとおりです。条件ループ本体条件ループ本体条件ループ本体、...

しかしdo-while、ループの場合は少し異なります。ループ本体条件ループ本体条件ループ本体、...

実際、whileループとループの唯一の違いは、ループ本体がループに対して少なくとも 1 回実行されるdo-whileという事実です。do-while


do-while2.ループを使用する利点

do-while基本的に、ループとループの唯一の違いは、ループの本体が少なくとも 1 回実行されることwhileです。do-while

一般に、do-whileループは、ループ本体が実行されていない場合にループ条件をチェックするのが無意味な場合に使用されます。たとえば、特定の計算がループ本体で実行され、その後、条件で使用される場合です。

例:

exitプログラムは単語が入力されるまでキーボードから行を読み取ります。

その間 一方を行います
String s;
while (true)
{
   s = console.nextLine();
   if (s.equals("exit"))
      break;
}
String s;
do
{
   s = console.nextLine();
}
while (!s.equals("exit"));

ループ内のbreakおよびステートメントは、ループ内と同じように機能します。continuedo-whilewhile


3.do-whileループの比較: Java と Pascal

もう一度言いますが、Pascal にはdo-whileループに相当するものがありますが、これはrepeat-untilループと呼ばれます。また、ループとは少し異なりますdo-while。ループではrepeat-until、条件はループをいつ継続するかではなく、いつループを終了するかを示します。

例:

パスカル ジャワ
Repeat
   ReadLn(s);
Until s = 'exit';
String s;
do {
   s = console.nextLine();
}
while ( !s.equals("exit") );

Java と比較すると、Pascal がこれを表現する方法は実に美しいです。パスカルの例から始めなければ、笑ってしまうでしょう。


2
タスク
Java Syntax,  レベル 6レッスン 5
ロック未解除
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.