java字符串拼接遇到null你会处理吗

news/2025/1/5 17:51:38/文章来源:https://www.cnblogs.com/zys2019/p/18650284

现有一个场景,对于发票信息,需要把信息中的地址和电话进行拼接,开户号和账号进行拼接,那应该怎么做?最简单的方法是使用+拼接,但问题是如果有个字段为空,是null,那么拼接结果是什么样的?来个下面的示例

public static void main(String[] args) {String a = null;String b = "world";String c1 = a + b;String c2 = StringUtils.defaultString(a) + StringUtils.defaultString(b);System.out.println(c1);System.out.println(c2);
}

打印结果如下:

 可以看出,如果字符串为null,那么直接使用+拼接(第一种方式),会将null也拼接,显然不是人性化的,看起来也不舒服。而第二种方式是就不会出现这样的问题,其实使用的是apache的工具类

org.apache.commons.lang3.StringUtils#defaultString

究其代码,其实也是当为null时设置为空串,相当于给了默认值。

肯定有人会说了,那我在拼接之前做一下判断,为null时将其替换为空串不就行了?当然可以,但是代码不会显得比较冗余?有官方已经封装好的方法不用,自己再去写,那不是笨蛋么

建议在编写代码时,尽量使用工具类(官方或自定义),减少代码冗余,维护起来也方便很多

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/863424.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

欧拉OpenEuler安装tomcat.241227

1. 安装tomcat unzip tomcat.zip mv tomcat /home/ cd /home/tomcat chmod +x *.sh cd bin chmod +x *.sh/home/tomcat下 三个sh 进行启动关闭 2. 开web端口 firewall-cmd --list-ports firewall-cmd --permanent --add-port=9090/tcp firewall-cmd --reload.zstitle { width:…

03CommonsCollections1

CC链的介绍Apache Commons 当中有⼀个组件叫做 Apache Commons Collections ,主要封装了Java 的 Collection(集合) 相关类对象,它提供了很多强有⼒的数据结构类型并且实现了各种集合工具类。 作为Apache开源项⽬的重要组件,Commons Collections被⼴泛应⽤于各种Java应⽤的开…

MYSQL数据库导出导入脚本.250102

以test数据库为例:一、导出数据库 /usr/local/mysql/bin/mysqldump -uroot -p test --routines | gzip > test_250102.sql.gz二、导入数据库 gunzip < /root/test_250102.sql.gz | /usr/local/mysql/bin/mysql -uroot -p test.zstitle { width: 280px; text-align: cent…

Github + Jekyll 搭建项目wiki

网站托管 创建新仓库 创建以自己名字为前缀, .github.io​为后缀的仓库 ​​ 在仓库的Settings中的Pages里设置Build and deployment​为Github Action​ ​​ 过一会即可跳转域名访问自己的页面 ​​ ‍ fork仓库 另外一种方法, 直接fork主题仓库,可以从官方主题这里获取更多。…

Postman安装及汉化教程 | 手把手教你轻松搞定

前言 Postman 是一款功能强大的 API 测试工具,深受开发者喜爱。然而,原版 Postman 是英文界面,对于习惯中文的用户可能不够友好。本教程详细介绍如何下载安装 Postman 并成功实现汉化,适合零基础用户。一、下载安装包 首先,获取 Postman 的安装包及对应汉化包: 👉 点击…

Postman安装及汉化操作全解(含图文步骤)

前言 Postman 是一款功能强大的 API 测试工具,深受开发者喜爱。然而,原版 Postman 是英文界面,对于习惯中文的用户可能不够友好。本教程详细介绍如何下载安装 Postman 并成功实现汉化,适合零基础用户。一、下载安装包 首先,获取 Postman 的安装包及对应汉化包: 👉 点击…

国产高性能CPU米尔瑞芯微RK3576赋能AIoT、工业、智能显示终端

随着市场需求不断的变化,各行各业对CPU的要求越来越高,特别是近几年流行的 AIOT,为了有更好的用户体验,CPU的算力就要求更高了。今天为大家推荐由米尔基于瑞芯微RK3576处理器推出的MYC-LR3576核心板及开发板。关于RK3576处理器国产CPU,是这些年的骄傲,华为手机全国产化,…

《IT项目管理》 - 课程笔记

Chapter 1. 项目管理概述 哪些是项目,哪些不是项目?为某银行客户开发、安装网上银行支付系统 √ 负责网上银行系统的销售工作 在2022年销售20套以上的网上银行系统 √ 为某银行的网上银行系统提供售后服务 建立客户售后服务热线 √ 管理售后服务热线,接听客户来电…

.net之阿里云短信服务集成

概念 集成阿里云短信服务 引用阿里云包封装AliyunSmsClient(二次封装阿里云短信基类)public class AliyunSmsClient{private readonly Client _client;private readonly AliyunSmsOptions _options;public AliyunSmsClient(IOptions<AliyunSmsOptions> options){_options…

Petalinux ARM设置自启动、自动加载驱动、自动挂载SD卡

一、在工程路径下新建app petalinux-create -t apps --template install -n myapp-init --enablepetalinux会在metausr目录下新建一个目录,结构如下 project-spec/meta-user/recipes-apps/myapp-init/ ├── files │ └── myapp-init ├── myapp-init.bb └── READM…

希捷移动硬盘开盘数据恢复之台州客户8T硬盘磁头突发损坏无法识别

这是一块8T的希捷3.5寸移动硬盘,浙江台州的老客户寄过来的,描述说是在公司正常使用的时候突然有异响,然后就不识别了,自己进行换数据线、换电脑等操作简单的排除了一下,确定是硬盘的故障,然后就联系我们中心邮寄过来进行数据恢复。收到硬盘后打开外壳,里面是一块型号为S…

云行 | “智”绘首都发展新篇章,天翼云携手伙伴共创“京”彩未来!

12月12日,以“智耀京华 焕新领航”为主题的天翼云中国行北京站活动圆满落幕。12月12日,以“智耀京华 焕新领航”为主题的天翼云中国行北京站活动圆满落幕。北京市经济和信息化局副局长刘维亮,中国电信股份有限公司北京分公司总经理寇凤达,天翼云科技有限公司助理总经理宫梅…