常用工具类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的克隆对象
相关推荐
abcnull3 小时前
用javaparser做精准测试
java·ast·静态代码分析·精准测试·javaparser
叶小鸡3 小时前
Java 篇-项目实战-苍穹外卖-笔记汇总
java·开发语言·笔记
AI人工智能+电脑小能手4 小时前
【大白话说Java面试题】【Java基础篇】第22题:HashMap 和 HashSet 有哪些区别
java·开发语言·哈希算法·散列表·hash
juniperhan4 小时前
Flink 系列第21篇:Flink SQL 函数与 UDF 全解读:类型推导、开发要点与 Module 扩展
java·大数据·数据仓库·分布式·sql·flink
ID_180079054734 小时前
Python 实现亚马逊商品详情 API 数据准确性校验(极简可用 + JSON 参考)
java·python·json
c++之路4 小时前
C++23概述
java·c++·c++23
专注API从业者5 小时前
Open Claw 京东商品监控选品实战:一键抓取、实时监控、高效选品
java·服务器·数据库
摇滚侠5 小时前
DBeaver 导入数据库 导入 SQL 文件 MySQL 备份恢复
java·数据库·mysql
keep one's resolveY6 小时前
SpringBoot实现重试机制的四种方案
java·spring boot·后端
天空属于哈夫克36 小时前
企业微信API常见的错误和解决方案
java·数据库·企业微信