apache commons StringUtils介绍 (转)

org.apache.axis org.apache.axis jar包.............................................. 立即下载

apache commons StringUtils介绍 (转)

  (2013-07-26 16:05:37)
标签: 

java

 

string

 

apache

 

commons

 

stringutils

 

it

分类: JavaWeb
apache commons StringUtils介绍

org.apache.commons.lang.StringUtils


StringUtils是apache commons lang库( http://commons.apache.org/lang)旗下的一个工具类,提供了很多有用的处理字符串的方法,本文不打算把所有的方法都介绍一遍,我会介绍一些精选的常用的给大家。


目前StringUtils有两个版本可用,分别是较新的org.apache.commons.lang3.StringUtils和较老的 org.apache.commons.lang.StringUtils,他们有比较大的区别,前者需要JAVA 5,我想这个应该是我们希望使用的。


1)public static boolean equals(CharSequence str1,CharSequence str2)

我们就先从最简单的方法equals开始,和你想的一样,他需要两个字符串参数,当相同的时候返回true,否则返回false。

但是java.lang.String已经有现成的比较完美的equals方法了,为何我们还需要一个第三方的实现呢?

这个问题很好,让我们来看看下面这些代码,看看有何问题?

Java代码 
  1. public void doStuffWithString(String stringParam) {    
  2. if(stringParam.equals("MyStringValue")) {    
  3. // do stuff }    
  4. }   

这个可能有NullPointerException出现,那么有几个办法处理:

Java代码 
  1. public void safeDoStuffWithString1(String stringParam) {    
  2. if(stringParam != null &&    
  3. stringParam.equals("MyStringValue")) {    
  4. // do stuff    
  5. }    
  6. }     
  7. public void safeDoStuffWithString2(String stringParm) {    
  8. if("MyStringValue".equals(stringParam))    
  9. {    
  10. // do stuff    
  11. }    
  12. }   
我本人不喜欢上面的两个方法,第一个看起来太臃肿,第二个看起来像错误的。这里我们就可以用一些StringUtils类了,这个类提供的equals方法是空指针安全的,不用担心传递给他的是什么参数,他不会抛出空指针异常,这样写:

Java代码 
  1. public void safeDoStuffWithString3(String stringParam) {   
  2. if(StringUtils.equals(stringParam,"MyStringValue))    
  3. {    
  4. // do stuff    
  5. }   
  6. }
这个是我个人的喜好,但是这个确实看起来比较简单易读。前面的两个方法虽然么有什么问题,但是我想StringUtils.equals还是值得考虑的。

2)isEmpty,isNotEmpty,isBlank,isNotBlank

和前面一样,这些方法相对于jdk提供的isEmpty方法来说,多了一个“空指针安全”,即不用考虑传递参数的空值问题,让我们来看一个例子:

Java代码 
  1. if(myString != null && !myString.isEmpty()) {    
  2. // 有点臃肿是把?   
  3. // Do stuff with myString    
  4. }    
  5.     
  6. if(StringUtils.isNotEmpty(myString)) { // 好多了吧    
  7. // Do stuff with myString    
  8. }   

Blank和empty的区别

isBlank将在字符串含有空白字符的时候,返回true,例如:

Java代码 
  1. String someWhiteSpace = " \t \n";    
  2. StringUtils.isEmpty(someWhiteSpace); // false    
  3. StringUtils.isBlank(someWhiteSpace); // true   

3)public static String[] split(String str,String separatorChars)
当然,这个方法相对于String.split也是空指针安全的,当你尝试split一个null字符串的时候,将返回Null,一个Null的分隔符将 按照空白字符分隔字符串,但是,还有一个理由让你可考虑使用StringUtils.split()方法,就是jdk自带的String.split由于 支持正则表达式进行分隔,所以可能带来意想不到的后果,例如:
Java代码 
  1. public void possiblyNotWhatYouWant() {   
  2. String contrivedExampleString = "one.two.three.four";    
  3. String[] result = contrivedExampleString.split(".");    
  4. System.out.println(result.length); // 0    
  5. }  

上面很明显你希望按照.分隔,但是jdk理解的“.”是正则表达式的任意字符,导致字符串内任意字符都匹配,返回一个size=0的字符串数组。其实你只要传递"\\."就行了,但是这个确实是一个问题。 
这样,使用StringUtils.split就简单多了,另外,我测试还发现StringUtils.split比jdk自带的split要快四倍。

4)public static String join(Iterable iterable,String separator)
这个方法确实很实用,因为jdk自身没有提供,简单使用方法:

Java代码 
  1. String[] numbers = {"one", "two", "three"};   
  2. StringUtils.join(numbers,","); // returns "one,two,three"   

当然你可以传递一个数字或者迭代序列iterators.

好了,我确信,这个库确实是一个比较实用的库,推荐大家使用。

API请参考: http://commons.apache.org/lang/api-3.1/org/apache/commons/lang3/StringUtils.html

axis2 jar包 用于使用AXIS2进行WebService接口的开发和调用 立即下载

相关推荐

StringUtils帮助类jar包

此帮助类是判断字符串为空,包括(null,"","null"),在写代码时有非常大的帮助,具体使用详见:https://www.jianshu.com/p/a1fa86a710c0

整理 apache 提供的StringUtils

[code="java"] public static void TestStr(){ //null 和 ""操作~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //判断是否Null 或者 "" //System.out.println(StringUtils.isEmpty(null)); //System.out.println(StringUti...

kswwhyk的博客 843

axis2.jar 解决 org.apache.axis2.util.JavaUtils.callStackToString问题

当你的webservice报这个错时 <Call Stack = DEBUG_FRAME = org.apache.axis2.util.JavaUtils.callStackToString(JavaUtils.java:564) DEBUG_FRAME = org.apache.axis2.description.ParameterIncludeImpl.debugParameterAdd(ParameterIncludeImpl.java:315) DEBUG_FRAME = org.apache.axis2.description.ParameterIncludeImpl.addParameter(ParameterIncludeImpl.java:106) ..... 请下这些jar

Apache Commons包 StringUtils工具类深入整理(转载)

字符串是在程序开发中最常见的,Apache Commons开源项目在org.apache.commons.lang3包下提供了StringUtils工具类,该类相当于是对jdk自带的String类的增强,主要做了几方面的处理: 1.核心设计理念就是对于null的进行内部处理,使用时不再需要进行繁琐的null值判定,同时也避免抛出空指针的异常 2.作为工具类,通过增加额外处理的方式,尽量避免抛出异常,例如截取字符串,如指定长度超过了最大长度,不会抛出异常 3.通过更多的重载方法,实现了忽略大小写、增加控制范围

ABCAA1024的博客 1854

中兴通讯招聘测评答题技巧,真题解析(附真题)

中兴招聘测评、中兴入职测评、中兴线上考试

guang221315221的博客 5803

2021-8-14 EDK II编译

2021-8-14 EDK II 编译为什么要写这篇文章新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 为什么要写这篇文章 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdo

qq_45775660的博客 2948

工具类Apache Commons Lang3 之StringUtils

概述 Lang3提供了许多Java库无法提供的辅助工具类,比如字符串,数值,反射,序列化等。如果熟练使用该包下的工具类,将节省我们的开发时间,避免重复实现,减少出错的可能。 版本 当前版本:3.12.0 3.x版本最低支持java7 使用 <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> &l

记录点滴 1万+

风控IV、AUC、KS python计算代码

df_temp:数据集,Y:是否逾期标签,feas_list:需要计算IV的 变量。2、 按月和不同Y 下的 IV计算。

暮雨听轩的专栏 1618

Apache common工具包之StringUtils的常用方法

转载:https://www.jianshu.com/p/d8dba2e77fe9

sky198989的博客 465

单目和多目视觉统一标定

单目和多目视觉统一标定 一.单目视觉标定 在图像测量过程以及机器视觉应用中,为确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,必须建立相机成像的几何模型,这些几何模型参数就是相机参数。在大多数条件下这些参数必须通过实验与计算才能得到,这个求解参数的过程就称之为相机标定(或摄像机标定)。无论是在图像测量或者机器视觉应用中,相机参数的标定都是非常关键的环节,其标定结果的精度及算法的稳定性直接影响相机工作产生结果的准确性。因此,做好相机标定是做好后续工作的前提,提高标定精度是科研工作的重点所在

吴建明wujianming_110117 2911

汽车IVI中控开发入门及进阶(三十八):手机投屏HiCar开发

为了兼容这部分手机,车机端在向手机端发送USB控制命令字的同时,需要启动mDNS Server,广播车机端IP地址和HiCar SDK侦听的Server Socket端口(IP地址和端口在HiCar SDK初始化USB driver时,告知车机),在检测到手机断开USB连接时关闭mDNS Server。厂商在集成HiCar SDK开发HMI应用时,不可避免会使用到智能座舱的敏感权限,例如位置权限、摄像头权限、麦克风权限等,SDK初始化时,厂商HMI应用需要设置必要的车机参数供SDK使用。

码农17年的博客 1075

WebService工具类

package com.gomehigo.cuatoms.task.common.utils; import org.apache.axis.client.Call; import org.apache.axis.client.Service; import org.apache.axis.utils.StringUtils; /** * 功能描述:WebService 远程调用工具 *

earthhour的专栏 713

7、刚度矩阵与弹簧元素:有限元分析的核心

本文深入探讨了有限元分析中的核心概念——刚度矩阵与弹簧元素。详细介绍了刚度矩阵的定义、构建方法及其对称性、正定性和稀疏性等性质,同时解析了弹簧和阻尼器元素的特性及其在模拟复杂系统中的应用,如液压缸、减震器等。通过结合刚度矩阵与弹簧元素,可以提高结构模型的精度并模拟复杂的工程系统。文章还讨论了优化策略、验证流程、误差分析及实际应用案例,展示了这些技术在桥梁分析、汽车悬挂系统等领域的重要作用,并展望了其在未来新材料、智能结构和数字孪生技术中的发展潜力。

nice1的博客 235

Java用set集合存储字符数组,Java List转字符串,Set转字符串,集合转字符串,数组转集合...

集合转字符串 :Setset1 = new HashSet<>();set1.add("a");set1.add("b");System.out.println(StringUtils.join(set1.toArray(), ","));//a,bListlist1 = new ArrayList<>();System.out.println(StringUtils.jo...

weixin_36420089的博客 890

使用 PLS 回归进行近红外光谱的异常值检测

在光谱数据中,并非每个数据点都是有效的,因此,在构建模型时找到与大部分数据不符合的数据点是一种必要的操作。这些数据我们称之为。在这篇文章中,我们将使用PLS回归进行红外光谱数据的异常值检测。

qq_44204759的博客 1423

万字长文带你由浅入深夯实ARM汇编基础——汇编指令及寻址方式最全梳理(附示例)!

见到汇编就害怕?读完这篇,扫除汇编拦路虎!!(示例丰富,可做手册,随手查阅!)

车载系统攻城狮 1万+

StringUtils

package org.jeecg.modules.system.audio.utils; import cn.hutool.core.text.StrFormatter; import java.util.Collection; import java.util.Map; /** * 字符串工具类 * * @author ruoyi */ public class StringUtils extends org.apache.commons.lang3.StringUtils { .

X2818566的博客 190

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

去除java list 中的 [] 括号

项目中经常遇到 java 后台 list中的数据要通过json 传入到前台页面中 这时 就需要去除 list中给我加上的 [] 。 方法如下 1.重写AbstractCollection类的toString 方法 private String toString(Collection collection){ StringBuffer stringbuff...

a9809的博客 1431

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

常用工具类

文章目录1、Java自带工具方法1.1 List集合拼接成以逗号分隔的字符串1.2 比较两个字符串是否相等,忽略大小写1.3 比较两个对象是否相等1.4 两个集合List 取交集2、apache commons工具类库2.1 commons-lang,java.lang的增强版2.1.1 字符串判空isEmpty():isBlank():isNotEmpty():isNotBlank()2.1.2 首字母转成大写2.1.3 重复拼接字符串2.1.4 格式化日期2.1.5 包装临时对象2.2 commons-

lisa2017_的博客 385

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

List集合转换为String字符串

List集合的内容拼接成以某种符号separator分隔的字符串的形式 方法一: import org.apache.commons.lang3.StringUtils; StringUtils.join(list.toArray(), separator); 方法二: public String listToString(List list, char separator) {     StringBuilder sb = new StringBuilder();     for (i

ChuaWi98的博客 4073

java string 转 date_java string类型怎么转化成date类型

代码如下:public class Date2String { @Test public void test() { Date date = new Date();SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");System.out.println(sdf.format(date));sdf = new SimpleDateFo...

weixin_39715907的博客 4624

一个把List<String>转化为以","隔开的字符串的方法

1 import java.util.ArrayList; 2 import java.util.List; 3 /** 4 * 集合操作 5 * @author intrl 6 * @date 2010-12-15 7 * @version 1.0 8 */ 9 public class Test { 10 11 publ...

kqixiang945的专栏 203

字符串工具类

字符串工具类StringUtils 字符串处理常用方法,继承org.apache.commons.lang3.StringUtils public class StringUtils extends org.apache.commons.lang3.StringUtils { /** * * 判断一个对象是否为空 * * @param object Object * @return true:为空 false:非空 */ public s

weixin_45698637的博客 364

java 字符串数组 join,[Java][JavaScript]字符串数组与字符串之间的互转(join/split)...

1、Java1-1、字符串数组=>字符串:StringUtils: join(Object[] array, String separator)例:import org.apache.commons.lang.StringUtils;public class StringUtilsTrial {public static void main(String[] args) {// Join a...

weixin_34847632的博客 331

java:高级文本处理

正则: import java.util.regex.Pattern; import java.util.regex.Matcher; 用javautil包就好 1.find()找匹配的位置 2.lookingat()部分匹配 3.matches()完全匹配 4.appendReplacement全部替代 5.replaceAll全部替代 转义: import org.apache.commons.lang3.StringEscapeUtils; 用apache的包 StringEscapeUtils.es

小楼一夜听春雨 567

java中逗号分隔的字符串和List相互转换

1、将逗号分隔的字符串转换为List String str = "a,b,c"; List<String> result = Arrays.asList(str.split(",")); 2、将List转换为逗号分隔的字符串 (1) 利用Guava的Joiner List<String> list = new ArrayList<String>(); list.add("a"); list.add("b"); list.add("c"); String

sinat_38990768的博客 411
上一篇: Eclipse下面Maven项目小心使用Project Clean
下一篇: javaweb学习总结(四十二)——Filter(过滤器)学习
javaPie
博客等级 码龄16年 1171粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值