1. 人生のループ
私たちの生活の中で、同じ行動を何度も実行する必要があることがよくあります。たとえば、多数のページからなるドキュメントをスキャンする必要があるとします。同じ手順を何度も繰り返すこと:
- 最初のページをスキャナーにセットします
- スキャンボタンを押します
- 次のページをスキャナーに置きます
これを手動で行うのは困難です。このプロセスを何らかの方法で自動化できれば素晴らしいでしょう。
または、別の例を考えてみましょう。受信トレイ内のすべての未読メールをスパムとしてマークしたいとします。かつては、各メールを一度に 1 つずつ選択してスパムとしてマークする必要がありました。
しかし、プログラマーは怠け者なので、ずっと前にこのプロセスを自動化しました。今では、文字のリストを選択して「スパムとしてマーク」をクリックするだけで、電子メール クライアントがリストを実行して各電子メールをスパム フォルダーに移動します。
ここで何を言えばいいでしょうか?コンピューターまたはプログラムがワンクリックで何百、何千もの単調な操作を実行できる場合、非常に便利です。そして今、あなたはこれを行う方法も学びます。
2.while
ループ
if-else ステートメントによりプログラミング機能が大幅に拡張され、さまざまな状況でさまざまなアクションを実行するプログラムを作成できるようになりました。しかし、プログラムを桁違いに強力にするもう 1 つのものが、ループです。
while
Java には、 、for
、for-each
の4 種類のループがありますdo-while
。ここでは、そのうちの最初のものについて詳しく見ていきます。
ループwhile
は非常にシンプルです。これは、条件とループ本体の2 つの部分のみで構成されます。ループ本体は、条件が満たされている限り繰り返し実行されますtrue
。一般に、while
ループは次のようになります。
while (condition)
statement;
while (condition)
{
block of statements
}
とてもシンプルです。ステートメントまたはステートメントのブロックは、ループ条件が等しい限り、繰り返し実行されます。true
これがその仕組みです。まず、状態がチェックされます。true の場合、ループ本体(ステートメントまたはステートメントのブロック) が実行されます。次に、条件が再度チェックされ、ループ本体が再度実行されます。条件がfalse になるまで続きます。
条件が常に trueの場合、プログラムの実行が停止することはありません。永久にループに陥ってしまいます。
初めてチェックされたときに条件がfalse の場合、ループの本体は一度も実行されません。
3. ループの例
ここでは、実際のループの実際の例をいくつか示します。
コード | 説明 |
---|---|
|
画面に 5 行が表示されます。
|
コード | 説明 |
---|---|
|
画面に 10 行が表示されます。
|
コード | 説明 |
---|---|
|
数値が入力されている限り、プログラムはキーボードから数値を読み取ります。 |
コード | 説明 |
---|---|
|
プログラムは画面上に文字を延々と表示します。C |
コード | 説明 |
---|---|
|
プログラムはキーボードから行を読み取ります
が入力されるまで |
前の例では、このequals()
メソッドは文字列を比較するために使用されています。文字列が等しい場合、関数は を返しますtrue
。文字列が等しくない場合は、 を返しますfalse
。
4. ループ内のループ
条件ステートメントについて学習すると、条件ステートメントを使用して、複数の条件ステートメントを組み合わせることで複雑なロジックを実装できることがわかりました。つまり、ステートメントif
内でステートメントを使用しますif
。
ループでも同じことができます。ループ内にループを記述するには、最初のループの本体内に 2 番目のループを記述する必要があります。次のようになります。
while (condition for outer loop)
{
while (condition for inner loop)
{
block of statements
}
}
3 つのタスクを見てみましょう。
タスク 1。Mom
単語を画面に 4 回表示するプログラムを書きたいとします。ループはまさに私たちが必要とするものです。コードは次のようになります。
コード | 説明 |
---|---|
|
画面に 4 行が表示されます。
|
タスク 2。A
1 行に5 つの文字 を表示するプログラムを作成したいと考えています。これを行うには、もう一度ループが必要です。コードは次のようになります。
コード | 説明 |
---|---|
|
の代わりにprintln() 、 を使用しますprint() 。そうしないと、各文字がA 別の行に配置されてしまいます。画面出力は次のようになります。
|
タスク 3。文字 s で構成される四角形を表示したいとしますA
。長方形は 4 行×5 列で構成されている必要があります。これを実現するには、入れ子になったループが必要です。最初の例 (4 行を出力する例) を単純に取り上げ、1 行を出力するコードを 2 番目の例のコードに置き換えます。
コード | 説明 |
---|---|
|
外側のループは紫色です。変数を使用してn ループの反復回数をカウントします。内側のループは緑色です。変数を使用して m ループの反復数をカウントします。内側のループが完了したら、カーソルを次の行に 明示的に移動する必要があります。そうしないと、プログラムが出力するすべての文字が 1 行に収まります。 画面出力は次のようになります。
|
外側のループと内側のループでは、ループの反復数をカウントするために異なる変数を使用する必要があります。また、System.out.println()
内側のループではA
同じ行に文字 s が表示されるため、内側のループの後にコマンドを追加する必要もありました。行上の文字が表示されたら、カーソルを新しい行に移動する必要があります。
5. ループの比較 Java と Pascal
皆さんの多くは高校でパスカルを勉強しました。ここでの内容を理解しやすくするために、while
Pascal と Java で書かれたループの比較を見てください。Pascal を知らない場合は、この部分を飛ばしてください。
パスカル | ジャワ |
---|---|
|
|
|
|
|
|
|
|
|
|
GO TO FULL VERSION