在Java中,空值检查通常使用==或!=来完成。另外,如果我们想做一张空支票,我们的条件将如下所示。
if (myString != null || myString != ""){ // Not null or empty } if(myList != null || myList.size() != 0){ // Not null or empty } if (myObject != null) { // Not Null }
此类控件会使您的代码变得重复并且随着代码的增长而难以管理。
这就是 Apache Commons Lang 3 库的用武之地。我们将检查 3 个类,以在对象中进行 null 或空检查,并使列表更可靠、更具可读性。首先,让我们看看如何将此库添加到我们的项目中。
如何将 Apache Commons Lang3 添加到您的项目
如果您使用 Maven,您可以将以下依赖项添加到 pom.xml 文件中:
<dependency> <groupid>org.apache.commons</groupid> <artifactid>commons-lang3</artifactid> <version>3.12.0</version> <!-- Check the version --> </dependency>
如果您使用 Gradle,您可以将以下依赖项添加到您的 build.gradle 文件中:
implementation 'org.apache.commons:commons-lang3:3.17.0' // Check the version
用于一般 Null 检查的 ObjectUtils
ObjectUtils 有几个有用的方法,您可以使用它们来检查对象并分配默认值。其中两个是 isEmpty 和 isNotEmpty 方法。这些方法检查对象是否为 null 或为空。
if (ObjectUtils.isEmpty(myObject)) { // Null or empty } if (ObjectUtils.isNotEmpty(myObject)) { // Not null or empty }
您还可以使用 Java Util。
if (Objects.isNull(myObject)) { // Null or empty } if (Objects.nonNull(myObject)) { // Not null or empty }
如果你想给一个对象分配一个默认值以防它为空,你可以使用ObjectUtils类的defaultIfNull方法。
Integer age = ObjectUtils.defaultIfNull(inputAge, 18);
使用 StringUtils 检查字符串是否为 Null 或空
特别是在处理字符串值时,我们需要进行大量的 null 或空检查。在这种情况下,我们可以使用 StringUtils 类轻松完成此操作。
if (StringUtils.isBlank(myString)) { // String is null, empty or contains only spaces } if (StringUtils.isNotBlank(myString)) { // String contains a valid value }
如果只想检查是否为 null 或为空;
if (StringUtils.isEmpty(myString)) { // String null or empty } if (StringUtils.isNotEmpty(myString)) { // String contains a valid value (Can contain only spaces) }
如果字符串为 null 或空并且您想为其分配默认值;
String name = StringUtils.defaultIfBlank(inputName, "John Doe");
如果字符串为 null、空或空格,这允许我们分配一个安全的默认值。
使用 CollectionUtils 进行集合检查
使用集合时,必须检查列表是否为空。使用 CollectionUtils 类,您可以使此类检查变得非常简单。
检查集合是否为空;
if (CollectionUtils.isEmpty(myList)) { // List is empty } if (CollectionUtils.isNotEmpty(myList)) { // List is valid }
这样,我们就可以同时进行两项检查,并使代码更加简洁。
使用 Apache Commons Lang 3,您可以通过更轻松地在 Java 中执行 null 检查来使代码更干净、可靠且可维护。有了这个很容易包含在项目中的库,您可以降低 Java 项目中的代码复杂性,并通过最大限度地减少错误来创建质量更高的软件开发过程。
...
感谢您阅读我的文章!如果您有任何问题、反馈或想法想要分享,我很乐意在评论中听到它们。
谢谢! ????
在 LinkedIn 上关注我:https://www.linkedin.com/in/tamerardal/
中:简化 Java 中的空检查:使用 Apache Commons Lang 3 编写干净的代码
资源:
- 教育 IO,Java 中的 ObjectsNonNull 是什么
- Apache Commons、StringUtils
- Apache Commons,依赖信息
- Baeldung,Java Commons Lang 3
以上是简化 Java 中的 Null 检查:使用 Apache Commons Lang 3 编写干净的代码的详细内容。更多信息请关注PHP中文网其他相关文章!

本文讨论了使用Maven和Gradle进行Java项目管理,构建自动化和依赖性解决方案,以比较其方法和优化策略。

本文使用Maven和Gradle之类的工具讨论了具有适当的版本控制和依赖关系管理的自定义Java库(JAR文件)的创建和使用。

本文讨论了使用咖啡因和Guava缓存在Java中实施多层缓存以提高应用程序性能。它涵盖设置,集成和绩效优势,以及配置和驱逐政策管理最佳PRA

本文讨论了使用JPA进行对象相关映射,并具有高级功能,例如缓存和懒惰加载。它涵盖了设置,实体映射和优化性能的最佳实践,同时突出潜在的陷阱。[159个字符]

Java的类上载涉及使用带有引导,扩展程序和应用程序类负载器的分层系统加载,链接和初始化类。父代授权模型确保首先加载核心类别,从而影响自定义类LOA


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

Atom编辑器mac版下载
最流行的的开源编辑器

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

SublimeText3 Linux新版
SublimeText3 Linux最新版

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能