目录
说在前面
以前我总结过一篇,Java基础之 String.trim() 究竟去掉了什么?
后来看StringUtils源码的时候,注意到了它也有一系列trim()方法,今天就总结一下。
这里的StringUtils指的是:
commons-lang3-3.1.jar包中:org.apache.commons.lang3.StringUtils
trim()
trim()方法去掉了哪些空格?
这个方法和String.trim()方法大同小异,在 去除 首尾空格(字符串两端的控制符(control characters, char <= 32))的基础上 还对 null进行了处理,看一下源代码就明白了。
trim()方法 源码
举个栗子:
trimToNull()
trimToNull()方法去掉了哪些空格?
这个方法和String.trim()方法大同小异,在 去除 首尾空格(字符串两端的控制符(control characters, char <= 32))的基础上 还对 null和""进行了处理,也就是如果为null或"",则返回null,看一下源代码就明白了。
trimToNull()方法 源码
先调用StringUtils.trim()方法,将“”处理成空字符串,然后给它赋值为null。所以如果是null或"",则返回null。
举个栗子:
trimToEmpty()
trimToEmpty()方法去掉了哪些空格?
这个方法和String.trim()方法大同小异,在 去除 首尾空格(字符串两端的控制符(control characters, char <= 32))的基础上 还对 null和""进行了处理,也就是如果为null或"",则返回"",看一下源代码就明白了。
trimToEmpty()方法 源码
源码里做了相应的解释,和具体的栗子。总的来说,如果 是null,赋值"",如果不是就调用的 String.trim()这个方法,也就是说如果是"",处理完也是"",下面自己操作一下:
总结
看完源码,其实都 恍然大悟了,就算别人怎么问你,你也不会难倒了。