在实际书写代码的时候,经常会因为对象为空,而抛出空指针异常java.lang.NullPointerException。

下面我们来看一下java中判断对象是否为空的方法:(推荐:java视频教程)

首先来看一下工具StringUtils的判断方法:

一种是org.apache.commons.lang3包下的;

另一种是org.springframework.util包下的。这两种StringUtils工具类判断对象是否为空是有差距的:StringUtils.isEmpty(CharSequence cs); //org.apache.commons.lang3包下的StringUtils类,判断是否为空的方法参数是字符序列类,也就是String类型

StringUtils.isEmpty(Object str); //而org.springframework.util包下的参数是Object类,也就是不仅仅能判断String类型,还能判断其他类型,比如Long等类型。

从上面的例子可以看出第二种的StringUtils类更实用。

下面来看一下org.apache.commons.lang3的StringUtils.isEmpty(CharSequence cs)源码:public static boolean isEmpty(final CharSequence cs) {

return cs == null || cs.length() == 0;

}

接下来是org.springframework.util的StringUtils.isEmpty(Object str)源码:public static boolean isEmpty(Object str) {

return (str == null || "".equals(str));

}

基本上判断对象是否为空,StringUtils.isEmpty(Object str)这个方法都能搞定。

更多java知识请关注java基础教程栏目。

java如何判断对象为空_java对象如何判断是否为空相关推荐

  1. java判断对象无数据_java 对象属性不能为空判断

    如何判断一个对象里的属性是否都为空的 怎么判断一个对象里的属性是否都为空的怎么判断一个对象里的属性是否都为空的,或者判断该对象是否是一个实体!引用:怎么判断一个对象里的属性是否都为空的,或者判断该对象 ...

  2. java判断对象已死_Java的JVM判断对象已死的基本算法分析

    jvm中有各种的垃圾收集器,每个收集器都有各自的算法.但是一切的根本都需要找到找到应该被消除的对象,理解如何找到死亡对象才是理解垃圾收集器的基础. 01两个基本算法 a.引用记数法:对象中加一个引用计 ...

  3. json java对象 简书_Java 对象的 Json 化与反 Json 化

    最近在家里修习 Java 这项技能,估计快点满技能点儿了,很开心.不过遇到了一个问题,困扰了我一阵子.问题是这样的,我要写 Android App,与服务器交互.大家都知道 Javascript 不知 ...

  4. java对象生命周期_Java对象生命周期和类生命周期

    原标题:Java对象生命周期和类生命周期 作者:彭空空 链接:https://www.jianshu.com/p/25ea857ba78b 导读 对象的生命周期 类的加载机制 类的生命周期 类加载器 ...

  5. java对象的类型转换_Java对象的类型转换和属性复制

    1. 问题的源由 在J2EE项目开发中,会涉及很多领域模型对象,例如, VO (View Object) 视图对象,也叫展示对象,用于前端页面渲染所需要的数据 DTO (Data Transfer O ...

  6. java创建一个人函数类_Java对象和类–学习如何创建和实现

    对象和类被认为是任何基于OOPs的语言的精华.由于Java是最常用的面向对象编程语言之一,因此非常有必要牢记这些概念.因此,我为您带来这篇文章,在这里我将给您一个完整的Java对 对象和类被认为是任何 ...

  7. java 对象池 实现_Java对象池技术的原理及其实现

    看到一片有关于java 对象基础知识,故转载一下,同时学习一下. 摘 要 本文在分析对象池技术基本原理的基础上,给出了对象池技术的两种实现方式.还指出了使用对象池技术时所应注意的问题. 关键词 对象池 ...

  8. java怎么限制一个对象的内存_java对象的内存布局及创建过程

    一.对象的内存布局 对象的内存结构又可以被分为:对象头,实例数据,对象填充 对象头:对象头结构在32位JVM与64位JVM中的实现细节是不同的 32bit: 64bit: 实例数据:对象真正存储的有效 ...

  9. java 对象向上转型_JAVA对象向上转型和向下转型

    今天做了一个测试的题目,发现自己还是很多问题没有静下心来做.很多问题是可以自己解决的但是自己一是没有读清题意,二是自己心里太急躁了.所以这个要自己应以为鉴! 对象的转型问题其实并不复杂,我们记住一句话 ...

  10. java 对象数组定义_Java对象数组定义与用法详解

    本文实例讲述了Java对象数组定义与用法.分享给大家供大家参考,具体如下: 所谓的对象数组,就是指包含了一组相关的对象,但是在对象数组的使用中一定要清楚一点:数组一定要先开辟空间,但是因为其是引用数据 ...

最新文章

  1. 管理员技术(六): 硬盘分区及格式化、 新建一个逻辑卷、调整现有磁盘的分区、扩展逻辑卷的大小、添加一个swap分区...
  2. EMC NetWorker备份oracle安装配置指南
  3. boost::overloaded_function用法的测试程序
  4. 顺序表链表 LeetCode专项练习 [19]\[24]
  5. leetcode 之Single Number(13)
  6. ASP.NET Core - Razor 页面介绍
  7. 华为云大咖说-庄表伟:架构师的基本功——管理篇
  8. c#异步文件传输功能
  9. JMeter接口测试中,响应数据中文显示乱码的处理方法(转)
  10. 脉冲压缩原理以及实验代码详解
  11. ng : 无法加载文件 C:\Users\AppData\Roaming\npm\ng.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.mi crosoft.c
  12. 读《影响力》社会认同有感
  13. 史上最全的CSS基础知识大全!
  14. php 去除汉字,php如何去除汉字
  15. 对待事物,乐观积极。
  16. STM32通过TB6612FNG模块驱动电机
  17. 关于——Git命令大全
  18. 灰度共生矩阵的原理及代码实现(python)
  19. 15.NAND FLASH驱动
  20. IMS各网元的主要功能

热门文章

  1. Android-黄油刀ButterKnife依赖注入源码,APT自动生成代码,利用javapoet语法搭建编译环境,建立MVP中空指针的保护机制
  2. android okgo分页,Android热门网络框架OkGo详解
  3. 关于星空的java小程序_有关星空的小程序有哪些?有关星空的小程序分享!
  4. python:单引号、双引号、三引号、转义和换行的使用
  5. javascript对象使用总结
  6. SAS、SATA、PCIe、NVMe
  7. jquery兄弟标签_jQuery获取父级、兄弟节点的方法
  8. linux 网卡加网桥,CentOS 7网卡网桥设置
  9. 图扑数字孪生机械设备,为智慧工业保驾护航
  10. 河北如何推进农村生活污水处理?