不思議なコメント、変なネスト、戻り値はbooleanじゃダメなの?、ジェネリクスの必然性といったところが突っ込み所でしょうか。
private static MarkEnum getListSizeMerker(List<?> arg1, List<?> arg2) { // Nullチェック if (arg1 == null || arg2 == null) { if (arg1 == null && arg2 != null) { return MarkEnum.CONST_A; } else if (arg1 != null && arg2 == null) { return MarkEnum.CONST_A; } else { return MarkEnum.CONST_B; } } if (arg2.size() == arg1.size()) { return MarkEnum.CONST_B; } else { return MarkEnum.CONST_A; } }
使い方ヒント: 「これは臭う」という行を見付けたら、各行のをクリックしてマーキングしておきましょう(要Twitter OAuth認証)
コメントありがとうございます。
2値だからといってTrue/Falseで返却するのは確かに盲目的ですね。
このメソッドの場合、2つのリストサイズをチェックしているだけなので、ユーティリティとしての用途かと思いました。
なので、このメソッドの呼び出し側が返却値を見てどのEnumに該当するかを判断すべきかな、と思い至った第です。
コメント投稿には、twitter認証が必要です。
Twitter認証
boolean じゃなくて enum を使うのが正しい、というのは意外と多い。
2値だからといって、true / false で本来表現できないものを boolean にするのは良くない。拡張性とか、可読性とかで。
それ以外は、アレだな、うん。