Checkstyle Javaルール

CheckstyleのJavaルールについて1つずつまとめます

EmptyForInitializerPad

CheckStyle公式ドキュメント

検証環境

Checkstyleバージョン:10.8.0
Javaバージョン:17


チェック概要

チェック追加バージョン
Checkstyle 3.4

for文の空の初期化式に空白を許可するかどうかをチェックする。
forの初期化式後に改行されている場合はチェックが実行されない。

〇forの初期化式とは

for (初期化式; 条件式; 変化式) {  
    // 繰り返しの中で実行される処理  
}

プロパティ

プロパティ デフォルト値 説明 追加バージョン
option PadOption nospace 空白パディングについてのポリシーを指定 3.4

〇PadOptionには以下の値が設定可能

説明
nospace 空白パディングは行わない
space 空白パディングを行う

設定+チェック実行結果

プロパティ設定なし

設定ファイル記述方法

<module name="Checker">
    <module name="TreeWalker">
        <module name="EmptyForInitializerPad"/>
    </module>
</module>

チェック実行例

// OK
for (; i < 2; i++ );
// OK
for (;i<2;i++);
// OK 空の初期化式後に改行されているためチェックは実行されない
for (
      ; i < 2; i++ );

// NG 空の初期化式の位置に空白が挿入されている
for ( ; i < 1; i++ );
// NG 空の初期化式の位置に空白が挿入されている
for ( ;i<2;i++);

プロパティ設定あり

option

空白パディングについてのポリシー

設定ファイル記述方法

<module name="Checker">
    <module name="TreeWalker">
        <module name="EmptyForInitializerPad">
            <property name="option" value="space"/>
        </module>
    </module>
</module>
チェック実行例
// NG 空の初期化式の位置に空白が挿入されてない
for (; i < 2; i++ );
// NG 空の初期化式の位置に空白が挿入されてない
for (;i<2;i++);
// OK 空の初期化式後に改行されているためチェックは実行されない
for (
      ; i < 2; i++ );

// OK
for ( ; i < 1; i++ );
// OK
for ( ;i<2;i++);