当前位置:首页 > 科技  > 软件

Springboot内置的工具类之ObjectUtils

来源: 责编: 时间:2023-11-09 09:14:42 390观看
导读在实际业务开发中,有时候经常需要判断对象是否为空、数组是否为空、两个对象是否相等,数组中是否包含某个元素,往数组中追加元素等这些操作,每次都手写太麻烦,然后很多人的选择是封装成util工具类,实际上类似这些东西,如果项

在实际业务开发中,有时候经常需要判断对象是否为空、数组是否为空、两个对象是否相等,数组中是否包含某个元素,往数组中追加元素等这些操作,每次都手写太麻烦,然后很多人的选择是封装成util工具类,实际上类似这些东西,如果项目使用了spring的框架,根本不需要封装,org.springframework.util.ObjectUtils类中已经封装好了各种的静态方法供你调用。那就一起来学习一下吧。hKW28资讯网——每日最新资讯28at.com

ObjectUtils

全限定类名:org.springframework.util.ObjectUtilshKW28资讯网——每日最新资讯28at.com

  • boolean isEmpty(Object obj)

作用:hKW28资讯网——每日最新资讯28at.com

obj可以是普通对象,也可以是普通数组,如果obj为空(null或is empty),则返回true;否则返回false;hKW28资讯网——每日最新资讯28at.com

  • boolean isEmpty(Object[] array)

作用:hKW28资讯网——每日最新资讯28at.com

array参数是数组,如果数组array为空(null或is empty),则返回true;否则返回false;hKW28资讯网——每日最新资讯28at.com

  • boolean isArray(Object obj)

作用:参数是对象,如果参数对象obj是数组,则返回true;否则返回false;hKW28资讯网——每日最新资讯28at.com

  • boolean containsElement(Object[] array, Object element)

作用:hKW28资讯网——每日最新资讯28at.com

参数array为目标数组,参数element为普通待判断的元素,如果目标数组array中包含元素element,则返回true; 否则返回false;hKW28资讯网——每日最新资讯28at.com

  • boolean nullSafeEquals(Object o1, Object o2)

作用:hKW28资讯网——每日最新资讯28at.com

参数为o1、o2为普通对象,可以是数字、字符、对象、数组,如果o1与o2相等,则返回true;否则返回false;hKW28资讯网——每日最新资讯28at.com

  • String nullSafeToString(Object obj)

作用:hKW28资讯网——每日最新资讯28at.com

参数obj可以是普通对象、布尔类型、byte类型、字符类型、浮点型、双精度浮点型、整型、长整型、短整型其中一种hKW28资讯网——每日最新资讯28at.com

  • A[] addObjectToArray(A[] array, O obj)

作用:参数array为目标数组,参数obj为待添加元素,向参数数组array的末尾追加新元素obj,并返回一个新数组;hKW28资讯网——每日最新资讯28at.com

@Testpublic void objectUtilsTest(){    Employee employee = new Employee();    employee.setRealName("zhangsan");    boolean empty = ObjectUtils.isEmpty(employee);    System.out.println("isEmpty:"+empty);    Employee[] employees={employee};    boolean empty1 = ObjectUtils.isEmpty(employees);    System.out.println("isEmpty(arrar):"+empty1);    boolean array = ObjectUtils.isArray(employees);    System.out.println("isArray:"+array);    Employee tar = new Employee();    tar.setRealName("zhangsan");    boolean b = ObjectUtils.containsElement(employees, tar);    System.out.println("containsElement:"+b);    boolean b1 = ObjectUtils.nullSafeEquals(employee, tar);    System.out.println("nullSafeEquals:"+b1);    Employee lisi = new Employee();    lisi.setRealName("lisi");    Employee[] employees1 = ObjectUtils.addObjectToArray(employees, lisi);    System.out.println("addObjectToArray:"+employees1);    String string = ObjectUtils.nullSafeToString(employees1);    System.out.println("nullSafeToString:"+string);}

总结

org.springframework.util.ObjectUtils类中有很多已经封装好的静态方法,平时用到的里面基本都有,下面是整体的UML类图,这里只是分享其中用频率非常高的7种,有兴趣的小伙伴可以继续深入探索下去。hKW28资讯网——每日最新资讯28at.com

图片hKW28资讯网——每日最新资讯28at.com


hKW28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-17892-0.htmlSpringboot内置的工具类之ObjectUtils

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Python中的双下划线:特殊方法和属性的魔法世界!

下一篇: Spring Cloud Gateway可扩展的微服务网关使用教程

标签:
  • 热门焦点
  • 红魔电竞平板评测:大屏幕硬实力

    前言:三年的疫情因为要上网课的原因激活了平板市场,如今网课的时代已经过去,大家的生活都恢复到了正轨,这也就意味着,真正考验平板电脑生存的环境来了。也就是面对着这种残酷的
  • 不容错过的MSBuild技巧,必备用法详解和实践指南

    一、MSBuild简介MSBuild是一种基于XML的构建引擎,用于在.NET Framework和.NET Core应用程序中自动化构建过程。它是Visual Studio的构建引擎,可在命令行或其他构建工具中使用
  • 企业采用CRM系统的11个好处

    客户关系管理(CRM)软件可以为企业提供很多的好处,从客户保留到提高生产力。  CRM软件用于企业收集客户互动,以改善客户体验和满意度。  CRM软件市场规模如今超过580
  • 自动化在DevOps中的力量:简化软件开发和交付

    自动化在DevOps中扮演着重要角色,它提升了DevOps的效能。通过自动化工具和方法,DevOps团队可以实现以下目标:消除手动和重复性任务。简化流程。在整个软件开发生命周期中实现更
  • 一文搞定Java NIO,以及各种奇葩流

    大家好,我是哪吒。很多朋友问我,如何才能学好IO流,对各种流的概念,云里雾里的,不求甚解。用到的时候,现百度,功能虽然实现了,但是为什么用这个?不知道。更别说效率问题了~下次再遇到,
  • 中国家电海外掘金正当时|出海专题

    作者|吴南南编辑|胡展嘉运营|陈佳慧出品|零态LT(ID:LingTai_LT)2023年,出海市场战况空前,中国创业者在海外纷纷摩拳擦掌,以期能够把中国的商业模式、创业理念、战略打法输出海外,他们依
  • 疑似小米14外观设计图曝光:后置相机模组变化不大

    下半年的大幕已经开启,而谁将成为下半年手机圈的主角就成为了大家关注的焦点,其中被传有望拿下新一代骁龙8 Gen3旗舰芯片的小米14系列更是备受大家瞩
  • 华为HarmonyOS 4.0将于8月4日发布 或搭载AI大模型技术

    华为宣布HarmonyOS4.0将于8月4日正式发布。此前,华为已经针对开发者公布了HarmonyOS4.0,以便于开发者提前进行适配,也因此被曝光出了一些新系统的特性
  • 与兆芯合作 联想推出全新旗舰版笔记本电脑开天N7系列

    联想与兆芯合作推出全新联想旗舰版笔记本电脑开天 N7系列。这个系列采用兆芯KX-6640MA处理器平台,KX-6640MA 处理器是采用了陆家嘴架构,16nm 工艺,4 核 4 线
Top