使用背景:
对多个IP地址以逗号分割进行拆分,程序运行报了空指针错误,下面是测试过程
- url中只有一个地址,测试由StringUtils.split(url, “,”) 转换出来为null
- 对字符串进行赋值例如 url = 1,2,3,9 StringUtils.split(url, “,”)
按道理来说会拆分成四个元素,但实际打印出来的长度为2,包含1和2,3,9 ,我去网上查找资料发现使用 没有问题啊,也没有找到出现这个情况的问题
最后通过找StringUtils 的用法找到了一个博客,其中介绍了两个StringUtils类
- org.apache.commons.lang3.StringUtils ,这个才是网上广泛使用的,各大博客介绍的用法都是它,我去看了看我的是下面第二种
- org.springframework.util.StringUtils ,我挑出对我问题产生原因的介绍
- 当没有分隔符的字符串时,这个时候对不起,会报NullPointerException异常,也就是这个split方法必须要有分隔符的存在。
- 它会从字符串中找分隔符是否存在,如果不存在直接报错,如果存在,不管有多少个分隔符,都是以第一个分隔符做切分,最终形成两个元素。
终于找到了原因,坑啊
参考地址https://kknews.cc/code/y3m6vmg.html