StringUtils工具类常用api <转>
该工具类是用于操作Java.lang.String类的。
StringUtils类与String类的区别在于:此类是null安全的,即如果输入参数String为null,则不会抛出NullPointerException异常,代码更健壮。
以函数isEmpty为例子:
存在字符串stringTest, 若该字符串为空,返回
1.使用String类判断方法为:
if(null !=stringTest){
if(stringTest.isEmpty()){
return true;
}
}else{
return true;
}
该方法需要先进行非空判断,已避免空指针。
2.使用StringUtils的判断方法为:
if(StringUtils.isEmpty(stringTest )){
return true;
}
查看StringUtils的源码可知:
public static boolean isEmpty(String str){
return (str == null) || (str.length() == 0);
}
其相关的操作已经处理好。再查看常见操作trim函数的源码如下:
public static String trim(String str){
return str == null ? null : str.trim();
}
因此可知,使用StringUtils类比原始的String类更加健壮,避免空指针。
常见方法如下:
判断函数:
1.判断是否为空,返回boolean:StringUtils.isEmpty(String str)
2.判断是否非空,返回boolean:StringUtils.isNotEmpty(String str)
3.判断空白,返回boolean:StringUtils.isBlank(String str)
4.判断非空白,返回boolean:StringUtils.isNotBlank(String str)
5.判断是否存在空白(数组),返回boolean:StringUtils.isAnyBlank(CharSequence… css)
6.判断是否存在空(数组),返回boolean:StringUtils.isAnyEmpty(CharSequence… css)
7.判断不存在空白(数组),返回boolean:StringUtils.isNoneBlank(CharSequence… css)
8.判断不存在空(数组),返回boolean:StringUtils.isNoneEmpty(CharSequence… css)
9.判断是否空白,返回boolean:StringUtils.isWhitespace(CharSequence cs)
大小写函数:
1.首字母大写,返回String:
StringUtils.capitalize(String str)
2.首字母小写,返回String:
StringUtils.uncapitalize(String str)
3.全部大写,返回String:
StringUtils.upperCase(String str)
4.全部小写,返回String:
StringUtils.lowerCase(String str)
5.大小写互相转化,返回String:
StringUtils.swapCase(String str)
6.判断是否全大写,返回boolean:
StringUtils.isAllUpperCase(CharSequence cs)
7.判断是否全小写,返回boolean:
StringUtils.isAllLowerCase(CharSequence cs)
删除函数:
1.从字符串中删除某字符,返回String:
StringUtils.remove(String str, char remove)
2.从字符串中删除字符串,返回String:
StringUtils.remove(String str, String remove)
3.删除结尾匹配的字符串,返回String:
StringUtils.removeEnd(String str, String remove)
4.删除结尾匹配的字符串,忽略大小写,返回String:
StringUtils.removeEndIgnoreCase(String str, String remove)
5.正则表达式删除字符串,返回String:
StringUtils.removePattern(String source, String regex)
6.删除开头匹配的字符串,返回String:
StringUtils.removeStart(String str, String remove)
StringUtils.removeStartIgnoreCase(String str, String remove)
7.删除所有空格,包括中间,返回String:
StringUtils.deleteWhitespace(String str)
字符替换函数:
1.用replacement替换searchString字符串,返回String;
max表示替换个数,默认全替换,为-1,可不填。0表示不换。其他表示从头开始替换n个
StringUtils.replace(String text, String searchString, String replacement, int max)
2.仅替换一个,从头开始,返回String:
StringUtils.replaceOnce(String text, String searchString, String replacement)
3.多个替换, searchList与replacementList需一一对应,返回String:
StringUtils.replaceEach(String text, String[] searchList, String[] replacementList)
4.多个循环替换,searchList与replacementList需一一对应,返回String:
StringUtils.replaceEachRepeatedly(String text, String[] searchList, String[] replacementList)
5.替换start到end的字符,返回String:
StringUtils.overlay(String str,String overlay,int start,int end)
拆分合并函数:
1.特定符号分割字符串,默认为空格,可不填,返回字符数组:
StringUtils.split(String str)
2.特定符合分割字符串为长度为n的字符数组,n为0,表示全拆,返回字符数组:StringUtils.split(String str, String separatorChars, int n)
3.合并函数,数组合并为字符串:
StringUtils.join(byte[] array,char separator)
4. 合并函数,separator为合并字符,当为null时,表示简单合并,亦可不填;startIndex和endIndex表示合并数组该下标间的字符,使用separator字符,亦可不填,表示全合并。
StringUtils.join(Object[] array,char separator,int startIndex,int endIndex)
截取函数
1.截取字符串,返回String:
StringUtils.substring(String str,int start)
2.从某字符后字符开始截取,返回String:
StringUtils.substringAfter(String str,String separator)
3.截取至最后一处该字符出现,返回String:
StringUtils.substringBeforeLast(String str,String separator)
4.从第一次该字符出现后截取,返回String:
StringUtils.substringAfterLast(String str,String separator)
5.截取某字符中间的子字符串,返回String:
StringUtils.substringBetween(String str,String tag)
删除空白函数
1.删除空格,返回String:
StringUtils.trim(String str)
2.转换空格为empty,返回String:
StringUtils.trimToEmpty(String str)
3.转换空格为null,返回String:
StringUtils.trimToNull(String str)
4.删除所有空格,包括字符串中间空格,返回String:
StringUtils.deleteWhitespace(String str)
判断是否相等函数
1.判断是否相等,返回boolean:
StringUtils.equals(CharSequence cs1,CharSequence cs2)
2…判断是否相等,忽略大小写,返回boolean:
StringUtils.equalsIgnoreCase(CharSequence cs1,CharSequence cs2)
是否包含函数
1.判断第一个参数字符串,是否都出参数2中,返回boolean:
StringUtils.containsOnly(CharSequence cs,char… valid)
2.判断字符串中所有字符,都不在参数2中,返回boolean:
StringUtils.containsNone(CharSequence cs,char… searchChars)
3.判断字符串是否以第二个参数开始,返回boolean:
StringUtils.startsWith(CharSequence str,CharSequence prefix)
3.判断字符串是否以第二个参数开始,忽略大小写,返回boolean:
StringUtils.startsWithIgnoreCase(CharSequence str,CharSequence prefix)
---------------分割线---------------
1.isEmpty(String str) 是否为空,空格字符为false
2.isNotEmpty(String str) 是否为非空,空格字符为true
3.isBlank(String str) 是否为空,空格字符为true
4.isNotBlank(String str) 是否为非空,空格字符为false
5.trim(String str)去除字符串两端的控制符,空字符串、null 返回 null
6.trimToEmpty(String str) 去除字符串两端的控制符,空字符串、null 返回""
7.stripToNull(String str) 去除字符串两端的空白符,空字符串、null 返回null
8.stripToEmpty(String str) 去除字符串两端的空白符,空字符串、null 返回""
9.strip(String str, String stripChars) 去掉str两端的在stripChars中的字符
10.StringUtils.strip("000000134_76539000","0")="134_76539"
11.stripStart (String str,String stripChars) 去除str 前端在stripChars中的字符
12.stripEnd (String str,String stripChars) 去除str 后端在stripChars中的字符
13.equals(String str1,String str2) 比较两个字符串是否相等,如果两个均为空则认为相等
14.indexOf(String str,char searchChar) 返回searchChar 在字符串中第一次出现的位置,如果没找到则返回 -1,如果str 为null 或者 "",也返回-1
15.indexOf(String str,char searchChar,int startPos) 返回字符searchChar从startPos开始在字符串str中第一次出现的位置。
16.contains(String str,char searchChar) str中是否包含字符searchChar,str为null 或者 searchChar为null,返回false 。
17.StringUtils.contains("", "") = true
18.StringUtils.contains("dfg", "") = true
19.containsIgnoreCase(String str,String searchStr) str中是否包含字符searchChar,不区分大小写
20.int indexOfAny(String str, char[] searchChars) 找出字符数组searchChars中的字符第一次出现在字符串str中的位置。 如果字符数组中的字符都不在字符串中,则返回-1 ,如果字符串为null或"",则返回-1
21.subString(String str,int start) 从start 开始,包含start 那个字符,得到字符串str 的子串,如果start为负数,则从后面开始数起。如果str 为null 或者 "" 则返回其本身
22.subStringBefore(String str,String separator) 得到字符串separator第一次出现前的子串。不包含那个字符,如果str 为null 或者 "" 则返回其本身。
23.subStringAfter(String str,String separator) 得到字符串separator第一次出现后的子串,不包含那个字符,如果 str 为null,或者"",则返回其本身
24.subString(String str,int start,int end) 同上
25.left(String str,int len) 得到字符串str从左边数len长度的子串,如果str 为null 或者 "",则返回其本身,如果len小于0,则返回""
26.right(String str,int len)得到字符串str从右边数len长度的子串
27.mid(String str,int pos,int len) 得到字符串str从pos开始len长度的子串,pos小于0,则设为0。
28.split(String str) 把字符串拆分成一个字符串数组,用空白符 作为分隔符,字符串为null 返回null,字符串为"",返回空数组{}
29.split(String str,char c) 按照 char c 拆分字符串
30.join(Object[] arrey)把数组中的元素连接成一个字符串返回
31.join(Object[] arrey,char c) 把数组中的元素拼接成一个字符串返回,把分隔符 c 也带上
32.deleteWhitespace(String str) 删除字符串中的所有空白符,包括转义字符
33.removeStart(String str,String remove) 如果字符串str是以remove开始,则去掉这个开始,然后返回,否则返回原来的串
34.removeEnd(String str,String remove) 如果字符串str是以字符串remove结尾,则去掉这个结尾,然后返回,否则返回原来的串。
35.remove(String str,char remove) 去掉字符串str中所有包含remove的部分,然后返回
36.replace(String str,String reql,String with) 在字符串text中用with代替repl,替换所有
37.replaceChars(String str,char old,char new) 在字符串中 new 字符代替 old 字符
38.public static String replaceChars(String str, String searchChars, String replaceChars)
39.StringUtils.replaceChars("asssdf","s","yyy")) = "ayyydf"
40.StringUtils.replaceChars("asdf","sd","y")) = "ayf"
41.StringUtils.replaceChars("assssddddf","sd","y"))= "ayyyyf"
42.overlay(String str,String new,int start,int end) 用字符串new 覆盖字符串str从start 到 end 之间的串
43.chop(String str) 去掉字符串的最后一个字符,比如/r/n
44.repeat(String str,int repart) 重复字符串repeat次
45.rightPad(String str,int size,String padStr) size长度的字符串,如果不够用padStr补齐
46.leftPad(String str,int size,String padStr)同上
47.center(String str,int size)产生一个字符串,长度等于size,str位于新串的中心
48.swapCase(String str) 字符串中的大写转小写,小写转换为大写
原创连接:https://blog.csdn.net/diypp2012/article/details/82971716 :https://blog.csdn.net/hj7jay/article/details/75461367
StringUtils工具类常用api <转>的更多相关文章
- hutool工具类常用API整理
0.官网学习地址 https://www.hutool.cn/ 1.依赖 <dependency> <groupId>cn.hutool</groupId> < ...
- Java,面试题,简历,Linux,大数据,常用开发工具类,API文档,电子书,各种思维导图资源,百度网盘资源,BBS论坛系统 ERP管理系统 OA办公自动化管理系统 车辆管理系统 各种后台管理系统
Java,面试题,简历,Linux,大数据,常用开发工具类,API文档,电子书,各种思维导图资源,百度网盘资源BBS论坛系统 ERP管理系统 OA办公自动化管理系统 车辆管理系统 家庭理财系统 各种后 ...
- StringUtils工具类常用方法汇总2(截取、去除空白、包含、查询索引)
在上一篇中总结了StringUtils工具类在判断字符串为空,大小写转换,移除字符或字符序列,替换,反转,切割合并等方面的方法,这次再汇总一下其它常用的方法. 一.截取 StringUtils ...
- Spring的StringUtils工具类
本文是转载文章,感觉比较好,如有侵权,请联系本人,我将及时删除. 原文网址:<Spring的StringUtils工具类> org.springframework.util.StringU ...
- StringUtils工具类常用方法汇总1(判空、转换、移除、替换、反转)
Apache commons lang3包下的StringUtils工具类中封装了一些字符串操作的方法,非常实用,使用起来也非常方便.最近自己也经常在项目中使用到了里面的一些方法,在这里将常用的方 ...
- StringUtils工具类常用方法汇总(判空、转换、移除、替换、反转)
Apache commons lang3包下的StringUtils工具类中封装了一些字符串操作的方法,非常实用,使用起来也非常方便.最近自己也经常在项目中使用到了里面的一些方法,在这里将常用的方法总 ...
- spring util包 StringUtils工具类中的isEmpty() 方法解析
今天在公司看到同事写的代码,无意发现在判断字符串类型时,使用的是StringUtils工具类中的isEmpty()去判断如下所示 @RequestMapping(value = "/pub/ ...
- StringUtils工具类常用方法汇总:判空、转换、移除、替换、反转。
Apache commons lang3包下的StringUtils工具类中封装了一些字符串操作的方法,非常实用,使用起来也非常方便.最近自己也经常在项目中使用到了里面的一些方法,在这里将常用的方法总 ...
- StringUtils工具类常用方法
前言:工作中看到项目组里的大牛写代码大量的用到了StringUtils工具类来做字符串的操作,便学习整理了一下,方便查阅. isEmpty(String str) 是否为空,空格字符为false is ...
随机推荐
- Employment Planning
Employment Planning 有n个月,每个月有一个最小需要的工人数量\(a_i\),雇佣一个工人的费用为\(h\),开除一个工人的费用为\(f\),薪水为\(s\),询问满足这n个月正常工 ...
- jq 手机键盘消失出现白色延迟
input 输入框失去焦点 $("#input").blur() 接口调用setTimeout 让输入框消失后再出现loading和调用接口 ios手机loading覆盖不完全 自 ...
- 关系型数据库---MYSQL---系统学习
1.概述 1.1 mysql数据库是一种 客户端/服务器体系 的 数据库系统: 服务器部分 在启动运行后没有人机界面,所以终端用户 无法直接使用MySQL: 对MySQL数据库进行访问.操作 ...
- ECMAScript6 Promise
Promise在Javascript中早就已经实现,在ECMAScript6中正式加入到标准.那么Promise到底是干什么的?怎么用? 一.Promise介绍 Promise是一个对象,用来传递异步 ...
- 【leetcode】970. Powerful Integers
题目如下: Given two non-negative integers x and y, an integer is powerful if it is equal to x^i + y^j fo ...
- Java Http POST/GET 情求
POST: //返回体 public static final String RESPONCE_BODY = "responceBody"; //URL public static ...
- ac自动机暴力跳fail匹配——hdu5880
很简单的题,ac自动机里再维护一个len表示每个状态的串长,用s去query时每到一个结点都要暴力跳fail,因为有可能这个结点不是,但是其fail是危险结点,找到一个就直接break 再用个差分数组 ...
- Shell5
sed文本编辑器(vim,notepad)非交互式的文本编辑器sed是逐行处理编辑器 sed [选项] ‘条件指令' 文件 #没有条件指令时,默认对全文所有进行修改sed的所有操作默认时在 ...
- (转)浅谈C中的malloc和free
原帖及讨论:http://bbs.bccn.net/thread-82212-1-1.html 在C语言的学习中,对内存管理这部分的知识掌握尤其重要!之前对C中的malloc()和free()两个函数 ...
- LIBRARY_PATH是编译时候用的,LD_LIBRARY_PATH是程序运行是使用的
LD_LIBRARY_PATH与LIBRARY_PATH的区别 看起来很像,但是完全是两码事. LIBRARY_PATH is used by gcc before compilation to se ...