博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
读源码Apache-commons-lang3-3.1(三)
阅读量:6937 次
发布时间:2019-06-27

本文共 2055 字,大约阅读时间需要 6 分钟。

Apacehe-commons-lang中提供了ChartUtils这个以关键性的工具类,充分的对字符转换字符串,字符转换字符对象,转换整型,字符串转换,null和空字符串等提供了处理。


1.ChartUtils提供的方法

toCharacterObject(char) 将参数字符转换为字符对象
toCharacterObject(String) 将参数字符串的第一个字符转换为字符对象
toChar(Character) 将参数字符对象转换为字符
toChar(Character, char) 将第一个参数字符对象转换为字符,若为null则用第二个参数代替
toChar(String) 将参数字符串的第一个字符转换为字符
toChar(String, char) 将第一个参数字符串的第一个字符转换为字符,若为null或者长度为0则用第二个参数代替
toIntValue(char) 字符转换整型
toIntValue(char, int)
toIntValue(Character)
toIntValue(Character, int)
toString(char) 字符转换字符串
toString(Character)
unicodeEscaped(char) 对字符进行unicode编码转换
unicodeEscaped(Character)
isAscii(char)
isAsciiPrintable(char) 判断参数字符是否为打印字符[32,127)
isAsciiControl(char) 判断参数字符是否为控制字符,小于32或者等于127
isAsciiAlpha(char) 对字符进行字母,大小写字母,数字等进行判断
isAsciiAlphaUpper(char)
isAsciiAlphaLower(char)
isAsciiNumeric(char)
isAsciiAlphanumeric(char)

2.关于toChar(String, char)方法

1
2
3
4
5
6
public 
static 
char 
toChar(String str, 
char 
defaultValue) {
        
if 
(StringUtils.isEmpty(str)) {
            
return 
defaultValue;
        
}
        
return 
str.charAt(
0
);
    
}

 说明:字符串的第一个字符作为转换后的char,当字符串为null或者长度为0的时候,将用第二个参数defaultvalue替代作为返回字符。

 在1.中个各方法相关的第二个参数通常作为替代值出现。


3.ChartUtils工具类实现对字符的判断,例如,数子,大小写字母,控制字符。

 以isAscii(char)代表的一系列isXXX(char)方法实现了这些功能。内部实现主要是基于字符与ASCII码之间的对应关系。


Apache-commons-lang提供的CharSequenceUtils类对字符序列进行处理。字符序列处理和字符串处理有着极大的相似之处。


4.CharSequenceUtils类提供的基本方法

subSequence(CharSequence,  int) 截取字符序列
indexOf(CharSequence, int, int) 从前往后判断第二个参数值在字符序列中的位置
indexOf(CharSequence, CharSequence, int)
lastIndexOf(CharSequence, int, int) 从后往前判断第二个参数值在字符序列中的位置
lastIndexOf(CharSequence, CharSequence,  int)
toCharArray(CharSequence) 字符序列转换为字符数组
regionMatches(CharSequence, boolean, int,  CharSequence, int, int) 字符序列匹配,第二个参数大小写处理方式true忽略大小写,false反之

5.提供的Char相关的类有ChartUtils,CharSequenceUtils,CharSet,ChartSetUtils,CharEncoding,CharRange类对字符和字符对象进行了相关处理,提供了一套完整的字符处理工具集合。


参见其他工具类:

ObjectUtils Range:

ArrayUtils :

StringUtils, RandomStringUtils:



   个人认为字符工具了能在字符流的处理中能给解决问题带来很大的方便。字符串的转换,字符和整型的转换,字符集合,字符编码,字符序列的处理都可能在处理字符流过程中的细节问题上发挥很大的功效。

本文转自 secondriver 51CTO博客,原文链接:http://blog.51cto.com/aiilive/1282066,如需转载请自行联系原作者

你可能感兴趣的文章
hibernate添加时间问题
查看>>
要看的
查看>>
我的Git忽略文件
查看>>
Maven学习总结(六)——Maven与Eclipse整合
查看>>
我的友情链接
查看>>
深入浅出CChart 每日一课——第九课 实时数据显示,期中考试
查看>>
深入浅出CChart 每日一课——第十三课 似曾相识之云图,乱花渐欲迷人眼
查看>>
SpringMVC权限管理
查看>>
nginx Etag模块
查看>>
Oracle操作的部分ddl语句
查看>>
tune2fs指令
查看>>
Windows Server 8任务管理新功能
查看>>
博文测试
查看>>
PHP字符串转二进制(支持混合字符串)
查看>>
Excel 中使用SQL 语句查询数据(四)
查看>>
java开发中的23种设计模式详解 [转]
查看>>
Linux上vi(vim)编辑器使用教程
查看>>
C#设计模式之职责链
查看>>
Git使用基础篇
查看>>
序列动作Sequence
查看>>