常用工具类ObjectUtils

作者简介:码上言

代表教程:Spring Boot + vue-element 开发个人博客项目实战教程

专栏内容:个人博客系统

我的文档网站:http://xyhwh-nav.cn/

文章目录

常用工具类ObjectUtils

引入包

java 复制代码
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.12.0</version>
</dependency>

常用方法

  1. isEmpty(Object obj)

检查对象是否为空。如果对象为null或者为空字符串、空数组、空Collection、空Map或者空Iterator,则返回true;否则返回false。

java 复制代码
String str = "";
boolean empty = ObjectUtils.isEmpty(str); // true
  1. isNotEmpty(Object obj)

检查对象是否非空。如果对象不为null且不为空字符串、空数组、空Collection、空Map或者空Iterator,则返回true;否则返回false。

java 复制代码
String str = "Hello";
boolean notEmpty = ObjectUtils.isNotEmpty(str); // true
  1. equals(Object object1, Object object2)

比较两个对象是否相等,可以处理null值,避免了NullPointerException的出现。

java 复制代码
String str1 = "Hello";
String str2 = "Hello";
boolean equals = ObjectUtils.equals(str1, str2); // true
  1. hashCode(Object obj)

计算对象的哈希码,可以处理null值。

java 复制代码
String str = "Hello";
int hashCode = ObjectUtils.hashCode(str); // 69609650
  1. toString(Object obj)

将对象转换为字符串。如果对象为空,则返回字符串"null"。

java 复制代码
int num = 123;
String str = ObjectUtils.toString(num); // "123"
  1. defaultIfNull(T object, T defaultValue)

如果对象为空,则返回默认值。

java 复制代码
String str = null;
String defaultStr = "default";
String result = ObjectUtils.defaultIfNull(str, defaultStr); // "default"
  1. allNotNull(Object... objects)

检查多个对象是否都不为空。如果所有对象都不为空,则返回true;否则返回false。

java 复制代码
String str1 = "Hello";
String str2 = "World";
boolean allNotNull = ObjectUtils.allNotNull(str1, str2); // true
  1. anyNotNull(Object... objects)

检查多个对象中是否至少有一个不为空。如果至少有一个对象不为空,则返回true;否则返回false。

java 复制代码
String str1 = "Hello";
String str2 = null;
boolean anyNotNull = ObjectUtils.anyNotNull(str1, str2); // true
  1. compare(Comparable c1, Comparable c2)

比较两个可比较的对象的大小。可以处理null值。如果c1小于c2,则返回负数;如果c1等于c2,则返回0;如果c1大于c2,则返回正数。

java 复制代码
Integer num1 = 123;
Integer num2 = 456;
int result = ObjectUtils.compare(num1, num2); // -1
  1. min(Comparable... values)

返回一组可比较对象中的最小值,可以处理null值。

java 复制代码
Integer num1 = 123;
Integer num2 = 456;
Integer min = ObjectUtils.min(num1, num2); // 123
  1. max(Comparable... values)

返回一组可比较对象中的最大值,可以处理null值。

java 复制代码
Integer num1 = 123;
Integer num2 = 456;
Integer max = ObjectUtils.max(num1, num2); // 456
  1. clone(Object obj)

克隆一个对象。如果对象实现了Cloneable接口,则调用其clone()方法进行克隆;否则返回null。

java 复制代码
Person person = new Person("John", 30);
Person clone = ObjectUtils.clone(person); // 返回person的克隆对象
相关推荐
学习3人组8 分钟前
JVM GC长暂停问题排查
java
R_AirMan20 分钟前
深入浅出Redis:一文掌握Redis底层数据结构与实现原理
java·数据结构·数据库·redis
人生在勤,不索何获-白大侠39 分钟前
day17——Java集合进阶(Collections、Map)
java·开发语言
程序员小羊!1 小时前
Java教程:JavaWeb ---MySQL高级
java·开发语言·mysql
白仑色1 小时前
Spring Boot 多环境配置详解
java·spring boot·后端·微服务架构·配置管理
超级小忍1 小时前
在 Spring Boot 中优化长轮询(Long Polling)连接频繁建立销毁问题
java·spring boot·后端
David爱编程1 小时前
Java 中 Integer 为什么不是万能的 int 替代品?
java·后端
老马啸西风1 小时前
个人网站一键引入免费开关评论功能 giscus
java
Z_W_H_2 小时前
【springboot】IDEA手动创建SpringBoot简单工程(无插件)
java·spring boot·intellij-idea
HeXDev2 小时前
【SkyWalking】服务端部署与微服务无侵入接入实战指南
java·微服务·架构·skywalking·链路追踪·微服务治理