定数との比較 #2
昨日の話の補足。
なんとなく、PMD や Checkstyle ではどうなるんだろう、と思ったので Eclipse Plugin で確認してみた。
- PMD
- strigValue.equals("hoge") だと "Position literals first in String comparisons."(文字列の比較ではリテラルを最初に置け) と Warnings に。逆では何もなし。
- Checkstyle
- デフォルト設定では両方とも特に何もなし
ふーむ、PMD 的には "hoge".equals(stringValue) が推奨らしい。
そういえば、C では単純ミスで比較が代入にならないように
if (a == 10)
ではなく
if (10 == a)
とするやり方があるけど、こういうのは普通に lint なり何なりの静的解析ツールを使えば防げるように思うんだけどもどうだろう。