-PR-

締切り済みの質問

質問No.6652169
暇なときにでも
暇なときにでも
お気に入り投稿に追加する (0人が追加しました)
回答数3
閲覧数10412
nullチェックの書き方(java)
javaでnullチェックをするメソッドがあったとします。

private boolean isNull(Object obj){
   // objのnullチェックする
}

自分的には

private boolean isNull(Object obj){
   // objのnullチェックする
   return obj == null;
}

と書きたくなってしまうのですが、分かりにくいという指摘をある人からされました。

みなさんでしたら、どのように実装しますか?

もしそれによるメリットなんかあったら教えていただきたいです。
投稿日時 - 2011-04-07 22:08:18

回答 (3)

回答No.3
はじめまして。

ってかObjectのNULLチェックをわざわざメソッドに分けなくてもいい気がしますが・・・。

まーあえて書くなら
return obj == null;
でいいと思います。
このレベルの判定にif文使う必要ないです。
投稿日時 - 2011-04-08 16:48:39
この回答を支持する
(現在0人が支持しています)
お礼
ご回答ありがとうございます。

ですよね。同じ考えの人がいて安心しました。
投稿日時 - 2011-04-08 22:20:32
回答No.2
いや,
return obj == null;
の方がよほど自然だし「間違えない」という意味でより良い. これが「わかりにくい」というのは, その「わかりにくい」という人間が悪い.

if (obj == null) {
return true;
} else {
return false;
}
でも確かに同じことだけど, このような書き方は読む人間に余計な労力を使わせてしまう.

むしろ本当にクラスの中で
private boolean isNull(Object obj)
と書いているとしたら, そっちの方がおかしい.
private boolean isNull()
static private boolean isNull(Object obj)
のどちらかでしょう.
投稿日時 - 2011-04-08 00:00:52
この回答を支持する
(現在0人が支持しています)
お礼
ご回答ありがとうございます。

確かにメソッドにする意味ないかもですね。

private static boolean isNull(Object obj)
で定義してますね
投稿日時 - 2011-04-08 22:19:37
回答No.1
private boolean isNull(Object obj){
   if (obj == null) {
    return true;
   } else {
    return false;
   }
}






うそです。


質問にある書き方でも分かりにくいとかいうなら

private boolean isNull(Object obj){
   return obj == null ? true : false;
}


比較するものが決まり切っていて、その結果をどこかに代入したりするならば、
いちいちifうんたら~なんて書きません。

ifで書くメリットは、そもそも比較がどういうものかを理解できていない人、
三項演算子を知らない人でも理解できる、年配の方にはウケがいいという、
低次元のことしか思いつきませんでした。

他の方法では、比較を行った結果、真ならA、偽ならBとするわけですから、
微々たる差でしょうが、速度的にも、質問にある書き方がベストだと思いますけど。


指摘を受けたならば、最適解を教えてもらい、なぜそれが最適なのかを
当人に問う方が断然早いと思います。
投稿日時 - 2011-04-07 22:46:02
この回答を支持する
(現在0人が支持しています)
お礼
ご回答ありがとうございます。

指摘者からされたのは naktakさんの出した最初の例に近いです↓

private boolean isNull(Object obj){
   if (obj == null) {
    return true;
   } else {
    return false;
   }
}

見やすいということなんですが‥好みだと思うんですけどね。
投稿日時 - 2011-04-07 23:00:07
この質問は役に立ちましたか?
4人が「このQ&Aが役に立った」と投票しています
もっと聞いてみる

関連するQ&A

この他の関連するQ&Aをキーワードで探す

別のキーワードで再検索する

同じカテゴリの人気Q&Aランキング

-PR-
-PR-

特集

背筋がゾクゾクする心霊体験を要チェック!

お城、ボート、ツリーハウス、ユニークな物件満載!

【期間限定】1ヶ月無料キャンペーン中!

同じカテゴリの人気Q&Aランキング

-PR-

ピックアップ

-PR-