Class Objects


  • public final class Objects
    extends java.lang.Object
    Helper functions that can operate on any Object.
    Since:
    1.14
    • Constructor Detail

      • Objects

        private Objects()
    • Method Detail

      • equal

        public static boolean equal​(java.lang.Object a,
                                    java.lang.Object b)
        Determines whether two possibly-null objects are equal. Returns:
        • true if a and b are both null.
        • true if a and b are both non-null and they are equal according to Object.equals(Object).
        • false in all other situations.

        This assumes that any non-null objects passed to this function conform to the equals() contract.

      • toStringHelper

        public static Objects.ToStringHelper toStringHelper​(java.lang.Object self)
        Creates an instance of Objects.ToStringHelper.

        This is helpful for implementing Object.toString(). Specification by example:

         // Returns "ClassName{}"
         Objects.toStringHelper(this)
         .toString();
        
         // Returns "ClassName{x=1}"
         Objects.toStringHelper(this)
         .add("x", 1)
         .toString();
        
         // Returns "MyObject{x=1}"
         Objects.toStringHelper("MyObject")
         .add("x", 1)
         .toString();
        
         // Returns "ClassName{x=1, y=foo}"
         Objects.toStringHelper(this)
         .add("x", 1)
         .add("y", "foo")
         .toString();
        
         // Returns "ClassName{x=1}"
         Objects.toStringHelper(this)
         .omitNullValues()
         .add("x", 1)
         .add("y", null)
         .toString();
         
        Parameters:
        self - the object to generate the string for (typically this), used only for its class name