返回顶部
首页 > 资讯 > 后端开发 > Python >Java中StringUtils与CollectionUtils和ObjectUtil概念讲解
  • 246
分享到

Java中StringUtils与CollectionUtils和ObjectUtil概念讲解

Java StringUtilsJava CollectionUtilsJava ObjectUtil 2022-12-27 12:12:22 246人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录一.解析概念StringUtils概念CollectionUtils概念ObjectUtil概念二.区别三.总结一.解析 概念 StringUtils概念 StringUtils

一.解析

概念

StringUtils概念

StringUtils 方法的操作对象是 Java.lang.String 类型的对象,是 jdk 提供的 String 类型操作方法的补充,并且是 null 安全的(即如果输入参数 String 为 null 则不会抛出 NullPointerException ,而是做了相应处理,例如,如果输入为 null 则返回也是 null 等,具体可以查看源代码)。

除了构造器,StringUtils 中一共有130多个方法,并且都是 static 的,所以我们可以这样调用 StringUtils.xxx()

CollectionUtils概念

CollectionUtils是日常经常会用到的一个工具类,在包org.apache.commons.collections中。

目前最常用到的两个方法是CollectionUtils.isEmpty()以及CollectionUtils.isNotEmpty()。

ObjectUtil概念

ObjectUtils工具类会尝试优雅的处理null输入,对于空输入通常不会抛出异常,每个方法都更详细的记录其行为。在标准的应用程序中ObjectUtils类不应该被实例化。

二.区别

1.StringUtils和 CollectionUtils分别用来判断字符串集合,ObjectUtil用来判断对象

2.想要字符串是否为空,先要了解“” 和null的区别

null 是没有地址的,可以理解为空指针。当对象在构造器初始化时,如果没有被赋予初始值,那么会默认赋值为 null。

“”空字符串是一个 String 对象是有地址的,只是内容是空。

isEmpty() 和 isBlank() 区别在于 isEmpty() 多了对于空格的判断,如果字符串只包含有空格,isEmpty()判定是非空的,而 isBlank() 判断空格依然是空字符串

StringUtils代码测试

String s1=null;
String s2="";
System.out.println("s1:"+s1+":"+StringUtils.isEmpty(s1))
System.out.println("s2:"+s2+":"+StringUtils.isEmpty(s2))
System.out.println("s1:"+s1+":"+StringUtils.isBlank(s1))
System.out.println("s2:"+s2+":"+StringUtils.isBlank(s2))

看结果

3.判断集合是否为空,也需要了解size==0和null

  • null 是没有地址的,可以理解为空指针。当对象在构造器初始化时,如果没有被赋予初始值,那么会默认赋值为 null。
  • size==0表示集合已经指向一个地址,但是指向的对象中没有元素。

看代码

List<String> list=new ArrayList();
list.add("张三");
list.add("李四");
list.add("王五");
if(CollectionUtils.isNotEmpty(list)){
    System.out.println("有值")
}else{
System.out.println("无值")
}

结果

4.同样的,判断对象是否为空,也分为地址为空和值为空,如果地址为空,ObjectUtil.isEmpty结果为true,值为空结果为false

这里需要创建实体类这个步骤省去了直接上代码

user user=new User()
user userDto= null;
System.out.println("user:"+Object.isEmpty(user));
System.out.println("userDto:"+Object.isEmpty(userDto));

看结果

三.总结

1.StringUtils多用来判读字符串字段,ObjectUtil多用来判断对象,CollectionUtils多用来判断集合

2.看情况而定, 有时我们的对象是空的时候有时这些方法有时会失效, 这是我们需要找寻其他的方法来进行非空判断, 避免"空指针异常"

到此这篇关于Java中StringUtils与CollectionUtils和ObjectUtil概念讲解的文章就介绍到这了,更多相关Java StringUtils内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Java中StringUtils与CollectionUtils和ObjectUtil概念讲解

本文链接: https://lsjlt.com/news/175936.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Java中StringUtils与CollectionUtils和ObjectUtil概念讲解
    目录一.解析概念StringUtils概念CollectionUtils概念ObjectUtil概念二.区别三.总结一.解析 概念 StringUtils概念 StringUtils...
    99+
    2022-12-27
    Java StringUtils Java CollectionUtils Java ObjectUtil
  • Java中StringUtils、CollectionUtils和ObjectUtil的区别是什么
    这篇文章主要介绍“Java中StringUtils、CollectionUtils和ObjectUtil的区别是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java中StringUtils、C...
    99+
    2023-07-04
  • C#中闭包概念讲解
    理解C#中的闭包 1、 闭包的含义 首先闭包并不是针对某一特定语言的概念,而是一个通用的概念。除了在各个支持函数式编程的语言中,我们会接触到它。一些不支持函数式编程的语言中也能支持闭...
    99+
    2024-04-02
  • MySQL中Like概念及用法讲解
    Like中文解释为喜欢的意思,但当应用于MySQL数据库中,Like则是一种语句,用于模糊查询,主要是针对字符型字段的,在一个字符型字段列中检索包含对应子串的。本文向大家介绍MySQL中Like语句。 一、Like是...
    99+
    2022-05-30
    MySQL Like
  • Java详细讲解堆排序与时间复杂度的概念
    目录一、堆排序1、什么是堆排序2、堆排序思想3、代码实现二、时间复杂度分析1、初始化建堆2、排序重建堆3、总结一、堆排序 1、什么是堆排序 (1)堆排序:堆排序(Heapsort)是...
    99+
    2024-04-02
  • c++分离讲解模板的概念与使用
    目录泛类编程函数模板函数模板的概念函数模板的使用函数模板的实例化函数模板的匹配原则类模板类模板的定义格式类模板的实例化泛类编程 学习模板,首先我们需要了解一下什么是泛类编程 #inc...
    99+
    2024-04-02
  • C++特殊类设计概念与示例讲解
    目录一、设计模式概念二、设计一个不能被拷贝的类三、设计一个只能在堆上创建对象的类3.1 私有构造3.2 私有析构四、设计一个只能在栈上创建对象的类五、设计不能被继承的类六、单例模式6...
    99+
    2023-05-17
    C++特殊类设计 C++设计模式
  • C++深入讲解类与封装的概念与使用
    目录一、类的组合二、类的封装三、类成员的作用域四、小结一、类的组合 电脑一般而言是由 CPU,内存,主板,键盘和硬盘等部件组合而成。 二、类的封装 类通常分为以下两个部分 类的实现...
    99+
    2024-04-02
  • 详细讲解JAVA中方法重载概念——简单易懂
    1、什么方法重载?方法的重载指的是方法名一样,但是参数类型不一样1.1、attack方法重载有一种英雄,叫做物理攻击英雄 ADHero,为ADHero 提供三种方法。public void attack() public void atta...
    99+
    2021-12-10
    java教程 重载
  • Java中内部类的概念与分类详解
    目录内部类概念内部类的分类:成员内部类普通内部类静态内部类局部内部类总结只能使用修饰限定符:public 和 默认 来修饰类 内部类概念 在 Java 中,将一个类定义在另一个类的内...
    99+
    2024-04-02
  • C++内存模型与名称空间概念讲解
    目录1、存储持续性与作用域及链接性2、作用域和链接3、静态持续变量4、静态持续性和外部链接性5、静态持续性与内部链接性6、静态存储性与无链接性7、const8、函数和链接性9、语言的...
    99+
    2023-01-02
    C++内存模型 C++名称空间
  • Java锁擦除与锁粗化概念和使用详解
    目录一、什么是锁擦除二、锁擦除的演示三、什么是锁粗化四、锁粗化的演示一、什么是锁擦除 锁擦除是指虚拟机即时编译器(JIT)在运行时,对一些代码上要求同步,但是被检测到不可能存在共享数...
    99+
    2023-02-13
    Java锁擦除与锁粗化 Java锁粗化 Java锁擦除
  • C++详细分析讲解引用的概念与使用
    目录1.引用的概念2.引用的格式3.引用的特性4.取别名原则5.引用的使用场景做参数做返回值int&Count()的讲解传值传引用效率比较6.引用和指针的不同点1.引用的概念...
    99+
    2024-04-02
  • C#Marshal类基本概念和入门实例讲解
    目录C# Marshal类基本概念及入门C# Marshal.Copy实现非托管指针和数组之间的转换挑战写文件读文件总结C# Marshal类基本概念及入门 marshal:直译为...
    99+
    2023-02-26
    C# Marshal类 Marshal类基本概念 Marshal类入门
  • Java中的同步与异步的概念
    这篇文章主要讲解了“Java中的同步与异步的概念”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java中的同步与异步的概念”吧!一.进程同步及异步的概念1.进程同步:就是在发出一个功能调用时...
    99+
    2023-05-30
    java
  • java中接口与继承的概念和实现方法
    本篇内容主要讲解“java中接口与继承的概念和实现方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“java中接口与继承的概念和实现方法”吧!目录JAVA接口的概念接口的代码实现定义关键字:in...
    99+
    2023-06-20
  • Java单例模式与破坏单例模式概念原理深入讲解
    目录什么是单例模式饿汉式(预加载)懒汉式(懒加载)反射破坏单例模式什么是单例模式 经典设计模式又分23种,也就是GoF 23 总体分为三大类: 创建型模式结构性模式行为型模式 Jav...
    99+
    2023-02-21
    Java单例模式 Java破坏单例模式
  • C语言超详细讲解指针的概念与使用
    目录一、指针与一维数组1. 指针与数组基础2. 指针与数组3. 一个思考二、指针与字符串三、指针和二维数组1. 指针数组与数组指针2. 指针数组3. 数组指针一、指针与一维数组 1....
    99+
    2024-04-02
  • Java中难理解的四个概念
    目录前言匿名内部类创建匿名内部类有两种办法匿名类的典型使用场景多线程线程生命周期为什么要使用多线程创建线程有两种方式两种创建方式对比同步为什么要使用同步序列化为什么使用序列化关键特性...
    99+
    2024-04-02
  • java中乐观锁与悲观锁的概念
    这篇文章主要介绍“java中乐观锁与悲观锁的概念”,在日常操作中,相信很多人在java中乐观锁与悲观锁的概念问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java中乐观锁与悲观锁的概念”的疑惑有所帮助!接下来...
    99+
    2023-06-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作