doステートメント
日本語 | する命令 |
英語 | do statement |
ふりがな | どぅすてーとめんと |
フリガナ | ドゥステートメント |
do-whileを使用した繰り返し文。
ステートメントの一種。
予約語「do」と「while」を用いたステートメント。
「ループ」を行うステートメントのひとつ。
「doステートメントwhile( 評価式 );」という形式で記述する。
ほぼ「whileステートメント」と同じ。
処理の順番が「ステートメント」→「評価式」→……→「ステートメント」→「評価式」となる。
つまり「必ず最初にステートメントを処理する」「最初に評価式を処理しない」という点がwhileステートメントと異なる。
それ以外はwhileステートメントと同様である。
doステートメントの使用方法については以下の項目も参照のこと。
・do-while
・while(whileステートメント)
・break(breakステートメント)
・continue(continueステートメント)
ステートメントの一種。
予約語「do」と「while」を用いたステートメント。
「ループ」を行うステートメントのひとつ。
「doステートメントwhile( 評価式 );」という形式で記述する。
ほぼ「whileステートメント」と同じ。
処理の順番が「ステートメント」→「評価式」→……→「ステートメント」→「評価式」となる。
つまり「必ず最初にステートメントを処理する」「最初に評価式を処理しない」という点がwhileステートメントと異なる。
それ以外はwhileステートメントと同様である。
doステートメントの使用方法については以下の項目も参照のこと。
・do-while
・while(whileステートメント)
・break(breakステートメント)
・continue(continueステートメント)
参考サイト
- (参考サイトはありません)
// Sample.java
public class Sample
{
public static void main( String[] args )
{
// 最も単純なdoステートメント。
// do ; while( true );
// ただし、無限ループになるので実際には意味がありません。
int iW1 = 0;
// iW1を1ずつ足していき、5以下の間繰り返します。
do/* ここから「ステートメント」→ */
{
System.out.print( iW1 + ", " );
++iW1;
}// ←ここまで「ステートメント」。
while( iW1 < 5 );
// ↑↑↑↑
// これが評価式。
System.out.println();
// 0, 1, 2, 3, 4,
// このように、評価式がtrueの間、ループし続けます。
// whileステートメントは「ステートメント」→「評価式」→……
// ……→「ステートメント」→「評価式」の順に処理されます。
do
{
System.out.println( "ステートメント" );
}
while( evaluate() );
// ステートメント
// 評価式 : 0
// ステートメント
// 評価式 : 1
// ステートメント
// 評価式 : 2
// このように、必ず最初にステートメントが実行されます。
iW1 = 0;
// doとwhileの間が「ステートメント」です。
do/* ここから「ステートメント」→ */System.out.print( ( iW1++ ) + ", " );/* ←ここまで「ステートメント」。*/while( iW1 < 5 );
System.out.println();
// 0, 1, 2, 3, 4,
// 通常は、「ステートメント」にはブロックを記述します。
iW1 = 0;
while( iW1 < 5 )/* ここから「ステートメント」→ */
{
System.out.print( iW1 + ", " );
++iW1;
}// ←ここまで「ステートメント」。
System.out.println();
// 0, 1, 2, 3, 4,
int i;
iW1 = 0;
// 「ステートメント」にはステートメントで
// あれば何でも記述できます。 ↓↓↓↓代入ステートメントです。
do/* ここから「ステートメント」→ */ i = 100; /* ←ここまで「ステートメント」。 */while( iW1 < 5 );
// 記述できるステートメントはひとつです。
// 以下のように「,」で複数記述することはできないため、通常は
// ブロックを記述します。
// do i = 100, ++i;while( iW1 < 5 );
// コンパイルエラー:
// トークン "," に構文エラーがあります。正しくは ";" です。
// ステートメントを省略することはできません。
// do /* ここから「ステートメント」→ */ /* ←ここまで「ステートメント」。*/ while( true );
// コンパイルエラー:
// トークン "}" に構文エラーがあります。正しくは "while" です。
}
// 処理順をチェックするためのフィールド。
static int count = 0;
// 処理順をチェックするためのメソッド。
private static boolean evaluate()
{
System.out.println( "評価式 : " + count );
++count;
if( count == 3 )
{
// countが3になったらfalseを返します。
return false;
}
return true;
}
}
public class Sample
{
public static void main( String[] args )
{
// 最も単純なdoステートメント。
// do ; while( true );
// ただし、無限ループになるので実際には意味がありません。
int iW1 = 0;
// iW1を1ずつ足していき、5以下の間繰り返します。
do/* ここから「ステートメント」→ */
{
System.out.print( iW1 + ", " );
++iW1;
}// ←ここまで「ステートメント」。
while( iW1 < 5 );
// ↑↑↑↑
// これが評価式。
System.out.println();
// 0, 1, 2, 3, 4,
// このように、評価式がtrueの間、ループし続けます。
// whileステートメントは「ステートメント」→「評価式」→……
// ……→「ステートメント」→「評価式」の順に処理されます。
do
{
System.out.println( "ステートメント" );
}
while( evaluate() );
// ステートメント
// 評価式 : 0
// ステートメント
// 評価式 : 1
// ステートメント
// 評価式 : 2
// このように、必ず最初にステートメントが実行されます。
iW1 = 0;
// doとwhileの間が「ステートメント」です。
do/* ここから「ステートメント」→ */System.out.print( ( iW1++ ) + ", " );/* ←ここまで「ステートメント」。*/while( iW1 < 5 );
System.out.println();
// 0, 1, 2, 3, 4,
// 通常は、「ステートメント」にはブロックを記述します。
iW1 = 0;
while( iW1 < 5 )/* ここから「ステートメント」→ */
{
System.out.print( iW1 + ", " );
++iW1;
}// ←ここまで「ステートメント」。
System.out.println();
// 0, 1, 2, 3, 4,
int i;
iW1 = 0;
// 「ステートメント」にはステートメントで
// あれば何でも記述できます。 ↓↓↓↓代入ステートメントです。
do/* ここから「ステートメント」→ */ i = 100; /* ←ここまで「ステートメント」。 */while( iW1 < 5 );
// 記述できるステートメントはひとつです。
// 以下のように「,」で複数記述することはできないため、通常は
// ブロックを記述します。
// do i = 100, ++i;while( iW1 < 5 );
// コンパイルエラー:
// トークン "," に構文エラーがあります。正しくは ";" です。
// ステートメントを省略することはできません。
// do /* ここから「ステートメント」→ */ /* ←ここまで「ステートメント」。*/ while( true );
// コンパイルエラー:
// トークン "}" に構文エラーがあります。正しくは "while" です。
}
// 処理順をチェックするためのフィールド。
static int count = 0;
// 処理順をチェックするためのメソッド。
private static boolean evaluate()
{
System.out.println( "評価式 : " + count );
++count;
if( count == 3 )
{
// countが3になったらfalseを返します。
return false;
}
return true;
}
}
// Sample.java public class Sample { public static void main( String[] args ) { // 最も単純なdoステートメント。 // do ; while( true ); // ただし、無限ループになるので実際には意味がありません。 int iW1 = 0; // iW1を1ずつ足していき、5以下の間繰り返します。 do/* ここから「ステートメント」→ */ { System.out.print( iW1 + ", " ); ++iW1; }// ←ここまで「ステートメント」。 while( iW1 < 5 ); // ↑↑↑↑ // これが評価式。 System.out.println(); // 0, 1, 2, 3, 4, // このように、評価式がtrueの間、ループし続けます。 // whileステートメントは「ステートメント」→「評価式」→…… // ……→「ステートメント」→「評価式」の順に処理されます。 do { System.out.println( "ステートメント" ); } while( evaluate() ); // ステートメント // 評価式 : 0 // ステートメント // 評価式 : 1 // ステートメント // 評価式 : 2 // このように、必ず最初にステートメントが実行されます。 iW1 = 0; // doとwhileの間が「ステートメント」です。 do/* ここから「ステートメント」→ */System.out.print( ( iW1++ ) + ", " );/* ←ここまで「ステートメント」。*/while( iW1 < 5 ); System.out.println(); // 0, 1, 2, 3, 4, // 通常は、「ステートメント」にはブロックを記述します。 iW1 = 0; while( iW1 < 5 )/* ここから「ステートメント」→ */ { System.out.print( iW1 + ", " ); ++iW1; }// ←ここまで「ステートメント」。 System.out.println(); // 0, 1, 2, 3, 4, int i; iW1 = 0; // 「ステートメント」にはステートメントで // あれば何でも記述できます。 ↓↓↓↓代入ステートメントです。 do/* ここから「ステートメント」→ */ i = 100; /* ←ここまで「ステートメント」。 */while( iW1 < 5 ); // 記述できるステートメントはひとつです。 // 以下のように「,」で複数記述することはできないため、通常は // ブロックを記述します。 // do i = 100, ++i;while( iW1 < 5 ); // コンパイルエラー: // トークン "," に構文エラーがあります。正しくは ";" です。 // ステートメントを省略することはできません。 // do /* ここから「ステートメント」→ */ /* ←ここまで「ステートメント」。*/ while( true ); // コンパイルエラー: // トークン "}" に構文エラーがあります。正しくは "while" です。 } // 処理順をチェックするためのフィールド。 static int count = 0; // 処理順をチェックするためのメソッド。 private static boolean evaluate() { System.out.println( "評価式 : " + count ); ++count; if( count == 3 ) { // countが3になったらfalseを返します。 return false; } return true; } }