هل هناك معيار جافا "على حد سواء لاغيا أو يساوي" أسلوب ثابت؟
سؤال
لانقاذ بعض الكتابة وتوضيح قانون بلدي، هناك الإصدار القياسي من الطريقة التالية؟
public static boolean bothNullOrEqual(Object x, Object y) {
return ( x == null ? y == null : x.equals(y) );
}
المحلول
ومع جافا 7 يمكنك القيام به مباشرة الآن فارغة آمنة يساوي:
(وObjectUtils.equals مكتبة جاكرتا العموم () وقد عفا عليها الزمن مع جافا 7)
نصائح أخرى
وإذا قبل بعض فرصة أنك لديك الوصول إلى مكتبة جاكرتا العموم هناك <لأ href = "http://commons.apache.org/lang/apidocs/org/apache/commons/lang3/ObjectUtils.html#equals (java.lang.Object،٪ 20java.lang.Object) "يختلط =" noreferrer "> ObjectUtils.equals () و الكثير من الوظائف المفيدة الأخرى.
وتحرير: أخطأت السؤال في البداية
إذا كنت تستخدم <1.7 ولكن لديها الجوافة المتاحة: <لأ href = "http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/base/Objects.html#equal (java.lang.Object،٪ 20java.lang.Object) "يختلط =" noreferrer "> Objects.equal(x, y)