for初期化ステートメント
| 日本語 | ~まで初期化命令 |
| 英語 | initialization of for statement |
| ふりがな | ふぉーしょきかすてーとめんと |
| フリガナ | フォーショキカステートメント |
forの「for( ここ; ; )」のこと。
forの初期化を行う箇所。
以下のいずれかを記述することができる。
・ローカル変数宣言
・式ステートメント
ローカル変数宣言は、ブロック以外では唯一行うことができる。
宣言された変数のスコープは、forステートメント内、つまりforのブロック内のみとなる。
式ステートメントは複数記述することができ、その場合には「,」を使用する。
このように特殊なルールを持つが、それ故、単純にローカル変数宣言のみを行った方が分かりやすいだろう。
forの初期化を行う箇所。
以下のいずれかを記述することができる。
・ローカル変数宣言
・式ステートメント
ローカル変数宣言は、ブロック以外では唯一行うことができる。
宣言された変数のスコープは、forステートメント内、つまりforのブロック内のみとなる。
式ステートメントは複数記述することができ、その場合には「,」を使用する。
このように特殊なルールを持つが、それ故、単純にローカル変数宣言のみを行った方が分かりやすいだろう。
参考サイト
- (参考サイトはありません)
// Sample.java
public class Sample
{
public static void main( String[] args )
{
// ↓これが「for初期化ステートメント」です。
for( int iF1 = 0; iF1 < 5; ++iF1 ) ;
// 通常は、ローカル変数宣言を行い、同時に初期化します。
for( int iF1 = 0; iF1 < 5; ++iF1 )
{
// 宣言したローカル変数には、ブロック内でアクセスできます。
System.out.print( iF1 + ", " );
}
System.out.println();
// 0, 1, 2, 3, 4,
// forステートメントの外ではアクセスできません。
// iF1 = 100;
// コンパイルエラー:
// iF1 は解決できません。
// 式ステートメントを記述することもできます。
// 複数記述する場合には「,」を使用します。
int iF1;
// 代入ステートメント
// ↓ プリインクリメントステートメント
// ↓ ↓
for( iF1 = 1, ++iF1; iF1 < 5; ++iF1 )
{
System.out.print( iF1 + ", " );
}
System.out.println();
// 2, 3, 4,
// それ以外、たとえばブロックは記述できません。
// for( {}; ; ) ;
// コンパイルエラー:
// トークン "{" に構文エラーがあります。正しくは ";" です。
}
}
public class Sample
{
public static void main( String[] args )
{
// ↓これが「for初期化ステートメント」です。
for( int iF1 = 0; iF1 < 5; ++iF1 ) ;
// 通常は、ローカル変数宣言を行い、同時に初期化します。
for( int iF1 = 0; iF1 < 5; ++iF1 )
{
// 宣言したローカル変数には、ブロック内でアクセスできます。
System.out.print( iF1 + ", " );
}
System.out.println();
// 0, 1, 2, 3, 4,
// forステートメントの外ではアクセスできません。
// iF1 = 100;
// コンパイルエラー:
// iF1 は解決できません。
// 式ステートメントを記述することもできます。
// 複数記述する場合には「,」を使用します。
int iF1;
// 代入ステートメント
// ↓ プリインクリメントステートメント
// ↓ ↓
for( iF1 = 1, ++iF1; iF1 < 5; ++iF1 )
{
System.out.print( iF1 + ", " );
}
System.out.println();
// 2, 3, 4,
// それ以外、たとえばブロックは記述できません。
// for( {}; ; ) ;
// コンパイルエラー:
// トークン "{" に構文エラーがあります。正しくは ";" です。
}
}
// Sample.java
public class Sample
{
public static void main( String[] args )
{
// ↓これが「for初期化ステートメント」です。
for( int iF1 = 0; iF1 < 5; ++iF1 ) ;
// 通常は、ローカル変数宣言を行い、同時に初期化します。
for( int iF1 = 0; iF1 < 5; ++iF1 )
{
// 宣言したローカル変数には、ブロック内でアクセスできます。
System.out.print( iF1 + ", " );
}
System.out.println();
// 0, 1, 2, 3, 4,
// forステートメントの外ではアクセスできません。
// iF1 = 100;
// コンパイルエラー:
// iF1 は解決できません。
// 式ステートメントを記述することもできます。
// 複数記述する場合には「,」を使用します。
int iF1;
// 代入ステートメント
// ↓ プリインクリメントステートメント
// ↓ ↓
for( iF1 = 1, ++iF1; iF1 < 5; ++iF1 )
{
System.out.print( iF1 + ", " );
}
System.out.println();
// 2, 3, 4,
// それ以外、たとえばブロックは記述できません。
// for( {}; ; ) ;
// コンパイルエラー:
// トークン "{" に構文エラーがあります。正しくは ";" です。
}
}




