Object类的常用方法!附加个人理解,欢迎指正!

1)checkFromIndexSize​(int fromIndex, int size, int length)

检查是否在子范围从 fromIndex (包括)到 fromIndex + size (不包括)是范围界限内 0 (包括)到 length (不包括)。简单理解就是是否越界,意思就是1+(1+size)是不是在区间0-3内;

2)checkFromToIndex​(int fromIndex, int toIndex, int length)

检查是否在子范围从 fromIndex (包括)到 toIndex (不包括)是范围界限内 0 (包括)到 length (不包括)。简单理解就是1-2是不是在区间0-3内;

3)checkIndex​(int index, int length)

检查 index是否在 0 (含)到 length (不包括)范围内。简单理解就是,就是句面意思;

4)compare​(T a, T b, Comparator<? super T> c)

如果参数相同则返回0,否则返回 c.compare(a, b) 。

5)deepEquals​(Object a, Object b)

 返回 true如果参数是深层相等,彼此 false其他。 深层相等

6)static boolean equals​(Object a, Object b)

 返回 true如果参数相等,彼此 false其他。就是做比较,相等返回true,不等返回false 

7)static int hash​(Object... values)

为一系列输入值生成哈希码。 

8)static int hashCode​(Object o)

返回非的哈希码 null参数,0为 null的论点。 

9)static boolean isNull​(Object obj)

返回 true如果提供的参考是 null ,否则返回 false 。  判断是否是空

10)static boolean nonNull​(Object obj)。  

 返回 true如果提供的参考是非 null否则返回 false 。   判断是否不是空

11)static <T> T requireNonNull​(T obj)    

检查指定的对象引用是否不是 null 。 

12)static <T> T requireNonNull​(T obj, String message)

 检查指定的对象引用是否为null ,如果是,则抛出自定义的NullPointerException 。  如果是空直接上异常

13)static <T> T requireNonNull​(T obj, Supplier<String> messageSupplier)

检查指定的对象引用是否为null ,如果是,则抛出自定义的NullPointerException 。 

14)static <T> T requireNonNullElse​(T obj, T defaultObj)

 如果它是非 null ,则返回第一个参数,否则返回非 null第二个参数。  字面意思

15)static <T> T requireNonNullElseGet​(T obj, Supplier<? extends T> supplier)

 如果它是非 null ,则返回第一个参数,否则返回非 null值 supplier.get() 。 

16)static String toString​(Object o)

 返回调用的结果 toString对于非 null参数, "null"为 null的说法。 

17)static String toString​(Object o, String nullDefault)

如果第一个参数不是 null ,则返回在第一个参数上调用 toString的结果,否则返回第二个参数。

Object类的常用方法!附加个人理解,欢迎指正!