Java常用方法:StringUtils工具类、去除空格的函数、手机号中间4位换成*、判断字符是否为数字
isEmpty系列
StringUtils.isEmpty()
是否为空. 可以看到 " " 空格是会绕过这种空判断,因为是一个空格,并不是严格的空值,会导致 isEmpty(" ")=false
判断参数是否为空。(为空的标准是str==null,str.length()==0)。
StringUtils.isEmpty(null) = true
StringUtils.isEmpty("") = true
StringUtils.isEmpty(" ") = false
StringUtils.isEmpty("bob") = false
StringUtils.isEmpty(" bob ") = falsepublic static boolean isEmpty(final CharSequence cs) {return cs == null || cs.length() == 0;
}
StringUtils.isNotEmpty()
相当于不为空 , = !isEmpty()。
public static boolean isNotEmpty(final CharSequence cs) {return !isEmpty(cs);}
StringUtils.isAnyEmpty()
是否有一个为空,只有一个为空,就为true。
StringUtils.isAnyEmpty(null) = true
StringUtils.isAnyEmpty(null, "foo") = true
StringUtils.isAnyEmpty("", "bar") = true
StringUtils.isAnyEmpty("bob", "") = true
StringUtils.isAnyEmpty(" bob ", null) = true
StringUtils.isAnyEmpty(" ", "bar") = false
StringUtils.isAnyEmpty("foo", "bar") = falsepublic static boolean isAnyEmpty(final CharSequence... css) {if (ArrayUtils.isEmpty(css)) {return true;}for (final CharSequence cs : css){if (isEmpty(cs)) {return true;}}return false;
}
StringUtils.isNoneEmpty()
相当于!isAnyEmpty(css) , 必须所有的值都不为空才返回true
StringUtils.isNoneEmpty(null) = false
StringUtils.isNoneEmpty(null, "foo") = false
StringUtils.isNoneEmpty("", "bar") = false
StringUtils.isNoneEmpty("bob", "") = false
StringUtils.isNoneEmpty(" bob ", null) = false
StringUtils.isNoneEmpty(" ", "bar") = true
StringUtils.isNoneEmpty("foo", "bar") = true
isBank系列
StringUtils.isBlank()
判断是否为空,长度是否为0,值是否包含空白字符
StringUtils.isBlank(null) = true
StringUtils.isBlank("") = true
StringUtils.isBlank(" ") = true
StringUtils.isBlank("bob") = false
StringUtils.isBlank(" bob ") = false对于制表符、换行符、换页符和回车符StringUtils.isBlank()均识为空白符。
StringUtils.isBlank("\t \n \f \r") -> true
\b 为单词边界符。
StringUtils.isBlank("\b") -> falsepublic static boolean isBlank(final CharSequence cs) {int strLen;if (cs == null || (strLen = cs.length()) == 0) {return true;}for (int i = 0; i < strLen; i++) {if (Character.isWhitespace(cs.charAt(i)) == false) {return false;}}return true;
}
StringUtils.isNotBlank()
判断参数:是否不为空,长度是否不为0,值是否不包含空白字符。等价于!isBlank(String str);
public static boolean isNotBlank(final CharSequence cs) {return !isBlank(cs);}
StringUtils.isAnyBlank()
是否包含任何真空值(包含空格或空值)
StringUtils.isAnyBlank(null) = true
StringUtils.isAnyBlank(null, "foo") = true
StringUtils.isAnyBlank(null, null) = true
StringUtils.isAnyBlank("", "bar") = true
StringUtils.isAnyBlank("bob", "") = true
StringUtils.isAnyBlank(" bob ", null) = true
StringUtils.isAnyBlank(" ", "bar") = true
StringUtils.isAnyBlank("foo", "bar") = falsepublic static boolean isAnyBlank(final CharSequence... css) {if (ArrayUtils.isEmpty(css)) {return true;}for (final CharSequence cs : css){if (isBlank(cs)) {return true;}}return false;
}
StringUtils.isNoneBlank()
是否全部都不包含空值或空格
StringUtils.isNoneBlank(null) = false
StringUtils.isNoneBlank(null, "foo") = false
StringUtils.isNoneBlank(null, null) = false
StringUtils.isNoneBlank("", "bar") = false
StringUtils.isNoneBlank("bob", "") = false
StringUtils.isNoneBlank(" bob ", null) = false
StringUtils.isNoneBlank(" ", "bar") = false
StringUtils.isNoneBlank("foo", "bar") = true
去除空格的函数
String.trim() // trim()是去掉首尾空格str.replace(" ", ""); // 去掉所有空格,包括首尾、中间str.replaceAll("\\s*", ""); // 可以替换大部分空白字符, 不限于空格
// \s 可以匹配空格、制表符、换页符等空白字符的其中任意一个
正则表达式将手机号中间4位换成*
String phone = "13123456789";
String phoneNumber = phone.replaceAll("(\\d{3})\\d{4}(\\d{4})","$1****$2");
判断字符是否是数字的四种方法
// 1、用JAVA自带的函数
public static boolean isNumeric(String str){for(int i = str.length(); --i>=0; ){ if(!Character.isDigit(str.charAt(i))){return false ;}}return true ;}
// 2、用正则表达式
public static boolean isNumeric(String str){ Pattern pattern = Pattern.compile("[0-9]*"); return pattern.matcher(str).matches(); }
// 3、用ascii码
public static boolean isNumeric(String str){for(int i=str.length();--i>=0;){int chr=str.charAt(i);if(chr<48 || chr>57)return false;}return true;
}
// 4、通过异常(比较非主流)
public boolean isNumber(String str) {try {Integer.parseInt(str);} catch (NumberFormatException e) {return false;}return true;
}
常用的方法,但是时间久了会记忆模糊,特作出记录,高手可以忽略。。。
Java常用方法:StringUtils工具类、去除空格的函数、手机号中间4位换成*、判断字符是否为数字相关推荐
- 字符串替换工具类,适用于身份证,手机号隐藏几位数字
public class StringReplaceUtil { /** * * @param s 传入字符串 * @param start 起始位置 * @param end 结束位置 * @ret ...
- java 工具类-去除字符串中特殊字符、全角转为半脚、获取字符串中姓名/电话、姓名重复后追加a.b.c...aa,ab..
java 工具类-去除字符串中特殊字符.全角转为半脚.获取字符串中姓名/电话.姓名重复后追加a.b.c-aa,ab- public class NameUtil {/*** 姓名重复后追加a.b.c. ...
- StringUtils 工具类常用方法汇总 1(判空、转换、移除、替换、反转)
Apache commons lang3 包下的 StringUtils 工具类中封装了一些字符串操作的方法,非常实用,使用起来也非常方便.最近自己也经常在项目中使用到了里面的一些方法,在这里将常用的 ...
- Apache Commons包 StringUtils工具类深入整理(转载)
[转载地址]:cnblogs.com/sealy321/p/10227131.html 字符串是在程序开发中最常见的,Apache Commons开源项目在org.apache.commons.lan ...
- Java导入Excel工具类使用教程
前言: 本工具类提供了Excel导入功能,通过反射机制将Excel中数据映射到实体类中,从而获取Excel数据,工具类依赖org.apache.poi包.支持RESTful API,支持Spring ...
- Apache Commons StringUtils工具类深入整理
字符串是在程序开发中最常见的,Apache Commons开源项目在org.apache.commons.lang3包下提供了StringUtils工具类,该类相当于是对jdk自带的String类的增 ...
- Apache commons lang3 StringUtils工具类
Apache commons lang3 StringUtils工具类 Apache commons lang3包下的StringUtils工具类中封装了一些字符串操作的方法,非常实用,使用起来也非常 ...
- java轻量级并行工具类_16 个超级实用的 Java 工具类
原标题:16 个超级实用的 Java 工具类 源 /juejin 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名, ...
- java downloadfile_FileDownload.java:文件下载工具类
FileDownload.java:文件下载工具类 2017-04-25·Mr.Xia 4489 次浏览 文件下载功能的工具类 JavaWeb工具类目录 [http://baike.xsoftlab. ...
最新文章
- xcode 学习笔记2:动态添加view
- iOS开发之--打印一堆奇怪东西的解决方案
- Stanford UFLDL教程 逻辑回归的向量化实现样例
- Nginx的负载均衡 - 保持会话 (ip_hash)
- Ubuntu下安装JDK步骤
- jqgrid本地数据例子_微型数据转换器如何通过更小尺寸为您带来更多价值
- 输入某年某月某日,判断这一天是这一年的第几天?(使用python语言)
- matlab读取fortran文件夹,怎样用fortran获取一个文件夹里的全部文件名?
- arouter跨module传递消息_利用ARouter实现组件间通信,解决子模块调用主模块问题...
- mysql linux文件_MySQL在Linux系统下配置文件详解
- Android之升级OkHttp编译提示错误如下Using ‘body(): ResponseBody?’ is an error. moved to val
- linux history文件路径,Linux、Unix常用命令(文件和目录相关)
- 系统已有MYSQL环境,如何安装宝塔面板
- Apollo进阶课程⑰丨Apollo感知之旅——传感器选择和安装
- java 空接口_学Java,java接口搞明白了吗?大牛让你一文搞清楚
- 百度地图api公交路线,IE下跳转百度地图后中文变成乱码的解决办法
- Structure from Motion综述
- 单片机电子时钟设计(期末课程设计)
- WIN7 SP1系统浏览器怎么离线升级到IE11,怎么解决?
- win10 任务栏 网络 图标 消失 空白 network location awareness 错误1068
热门文章
- MW4530R升级openwrt
- 【得物技术】得物直播秒开体验提升
- 1.6 x86读取smbios信息
- 名帖42 伊秉绶 隶书《扇面三幅》
- Python - global类型与globals()方法
- iOS 百度地图定位不显示蓝色小圆圈
- QML自定义环形菜单/环形选择框
- linux拷贝5g文件,电脑使用U盘复制5G文件提示“复制文件过大无法复制”如何解决...
- java a 艾斯克_液晶电视谁品牌好?jdk、eclipse、tomcat等一系列Java开发环境
- 产品经理成长的不利因素 from俞军