Java7のObjects.equalsで2つのオブジェクトを比較する
Java7からObjectsクラスが使えます。
Objects.equals(a,b)でaとbを比較します。
同じならtrue,違うならfalseを返します。
このメソッドはnullを気にせずに比較することができるため大変便利です。
以前は以下のように比較していたと思います。
String a = "1";
if (a != null && a.equals(b)) {
// 処理
}
もしくは定数を先に持っていき、equalsで比較していたと思います。
Objects.equalsを使えばnullを考慮せずに比較することができます。
package jp.confrage;
import java.math.BigDecimal;
import java.util.Objects;
public class Test1{
public static void main(String[] args) {
BigDecimal bd1 = new BigDecimal("10");
BigDecimal bd2 = new BigDecimal("10");
String a = "1";
String b = "1";
System.out.println(Objects.equals(null, null));
System.out.println(Objects.equals(a, b));
System.out.println(Objects.equals(bd1, bd2));
}
}
結果は以下のようになります。
true
true
true
Objects.equalsでは型も考慮してくれます。
String a = "1";
BigDecimal b = BigDecimal.ONE;
Objects.equals(a,b);// →falseとなります

KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
資格:少額短期保険募集人,FP3級,宅建士
コメント