LoginSignup
3
1

More than 5 years have passed since last update.

Javaでシステムプロパティから簡単に整数を取得する

Posted at

Javaでシステムプロパティ(-Dから始まるパラメータ)から整数を取得するのはとても簡単です。
IntegerのgetInteger(String, int)メソッドを使うだけです。

Demo.java
public class Demo {

    // 今回のサンプルでは myapp.loop.count というシステムプロパティとする
    private static final String SYSTEM_PROP_KEY = "myapp.loop.count";

    public static void main(String[] args) {

        // ★ポイント
        Integer count = Integer.getInteger(SYSTEM_PROP_KEY, 10);
        String value = "";
        for (int i = 0; i < count; i++) {
            value = value + "*";
            System.out.println(value);
        }
    }
}

★ポイント
第一引数はシステムプロパティのキー(文字列)、第二引数はデフォルト値になります。
デフォルト値はシステムプロパティが設定されていない場合や、設定した値がIntegerに変換できない場合に適用されます。

試しに実行してみる
C:\temp>javac Demo.java

C:\temp>java Demo
*
**
***
****
*****
******
*******
********
*********
**********

C:\temp>java -Dmyapp.loop.count=5 Demo
*
**
***
****
*****

C:\temp>java -Dmyapp.loop.count=x Demo
*
**
***
****
*****
******
*******
********
*********
**********

C:\temp>

最初はシステムプロパティを設定していない場合です。この場合はデフォルト値の10となります。

二回目はシステムプロパティで5を設定した場合です。この場合はしっかりと5が設定されます。

最後はシステムプロパティにIntegerに変換できない値(例ではx)を設定した場合です。この場合もデフォルト値の10となります。

システムプロパティから整数を取得したい場合、わざわざSystem.getProperty(String)を使う必要がないので簡単ですね!

以下は新人向けの記事です。参考までに。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1