关于java:常用的字符串操作

41次阅读

共计 4379 个字符,预计需要花费 11 分钟才能阅读完成。

StrFunc

———-

StrFunc 是一个字符串操作的函数库,这个类不能被实例化,它外面定义的全副是动态函数。

————————————————————–

罕用办法示例阐明:
isNull:判断指定字符串是否为空
参数阐明:
@param String 要判断是否为空的字符串
@return boolean 为空或长度为 0,返回 true,否则返回 false
应用举例:
StrFunc.isNull(” “); 有 2 个空格的字符串,返回 false
StrFunc.isNull(null); 返回 true

if (StrFunc.isNull(userStr)){

        throw new Exception("没有指定调配角色的用户或角色!");

}

compareStr: 比拟 2 个字符串是否统一
参数阐明:
@param str1 要进行比拟的字符串
@param str2 要进行比拟的字符串
@return 都为空返回 true, 都不为空且内容一样也返回 true, 否则返回 false
应用举例:
if(!StrFunc.compareStr(oldUpid, upId)){

}

比拟字符串的另外几个办法:
compareStrIgnoreCase(final String str1, final String str2) 比拟时疏忽大小写
compareStrIgnoreBlank(final String str1, final String str2) 字符串内容统一返回 true,反之 false。比拟时疏忽 ”” 和 null 的区别
compareStrIgnoreBlankAndCase(final String str1, final String str2) 比拟时疏忽 ”” 和 null 的区别, 疏忽大小写
compareStrInt(final String str1, final String str2) 比拟字符串的大小,如果 str1>str2,返回正整数;如果 str1=str2,返回 0;如果 str1<str2,返回负整数

str2Text: 将指定的字符串中的不可见字符转换为可见字符的示意
不可见字符是指在 java 中有非凡含意的字符如:换行符(“\n”),回车 (“\r”) 等。
参数阐明:
@param String 要转换的字符串
@return String 返回可见字符串
应用举例:
StrFunc.str2Text(“A B C”);
返回值为:
A\u20B\tC

text2Str: str2Text 的逆办法
参数阐明:
@param String 本义后的可见文本
@return String 将字符串 txt 中的 \r,\n,\t 等明文的本义写法,转成对应的字符
应用举例:
StrFunc.text2Str(“A\u20B\tC”);
返回值为:
A B C

date2str: 将日期对象格式化为字符串
参数阐明:
@param dat Calendar 类型,要转换的日期
@param fmt 要转换成的格局
@return 日期字符串

  1. y 示意年,m 示意月,d 示意日
  2. y/m/ d 取值为阿拉伯数字(123),Y/M/ D 取值为汉字(一二三)
  3. 2006,对“yy 年”返回“06 年”;对“yyyy 年”则返回“2006 年”
  4. h/n/ s 别离对应时、分、秒;q、qq、Q、QQ,示意季度
  5. mmm 示意用英文显示月份

应用举例:
Calendar c = Calendar.getInstance();
c.set(2013,6, 2);
StrFunc.date2str(c,“YYYY 年 MM 月 DD 日 ”);
其返回内容为:二零一三年七月二日

重载办法:
date2str(Object dat, String fmt)
将日期对象格式化为字符串, 对象可传递:
Date,Timestamp,Calendar

double2Str: 此函数负责将浮点数转成字符串,用来显示。
参数阐明:
@param double 要转换成串的浮点数
如果 d 为 Double.NaN,返回长度为 0 的字符串;如果为 Double.POSITIVE_INFINITY,返回∞;如果为 Double.NEGATIVE_INFINITY,返回﹣∞;
@param mindeclen 设置小数局部容许的最小位数
@param maxdeclen 设置小数局部容许的最大位数
@param groupnum 是否将这种格局利用分组(整数局部,每 3 位一个逗号)
@return 浮点数字符串
该办法转换成字符串后的数值只能保障最大 15 或 16 位有效位数

应用举例:
StrFunc.double2str(22222.1449,3,3,false);
其返回内容为:22222.145

StrFunc.double2str(-345678.12345, 0, 4, true);
其返回内容为:-345,678.1235

StrFunc.double2str(81.1468032741434, -3, 5, true);
其返回内容为:81.1468

重载办法:
double2str(final double d)
小数局部容许的最小位数为 0,小数局部容许的最大位数为 10,不分组

ensureEndWith: 确保字符串以串 end 结尾,如果 r 曾经是 end 结尾或 end 为 null,则不扭转

参数阐明:
@param r 字符串
@param end 字符串
@return 如果 r 字串以 end 结尾或 end 为 null,间接返回 r;若 r 字串不以 end 结尾,且 end 不为 null,返回 r +end。
应用举例:
StrFunc.ensureEndWith(file,“.tmp”);
StrFunc.ensureEndWith(folder, File.separator);
ensureStartEndWith(final String s, final String start, final String end) 确保 s 以 start 结尾 end 结尾
startEndWith(final String r, final String start, final String end) 判断 r 是否以 start 结尾且以 end 结尾,返回 ture/false

parseBoolean: 将字符串解析为 boolean 值。
参数阐明:
@param str 要转换为 boolean 类型的字符串
@param def 默认返回值,如果转换不胜利返回 def
@return 对应的 boolean 类型值
若给定的字符串是 true、t、1、是,疏忽大小写,返回 true
若字符串为 false、f、0、否,疏忽大小写,返回 false

应用举例:
StrFunc.parseBoolean(“trUE”, false); 返回 true
StrFunc.parseBoolean(“dsfdgedf”, false); 返回默认值 false

str2int: 将字符串转换为 int
参数阐明:
@param o 要转换为 int 类型的对象
@param def 转换不胜利返回的默认值
@return 将传入的字符串转换为 int 返回,如果转换不胜利那么返回 def

应用举例:
int pagesize = StrFunc.str2int(req.getParameter(“pagesize”), PAGESIZE);

null2blank:空对象转换成长度为 0 的字符串
参数阐明:
@param str 对象
@return 如果 str 为 null,返回长度为 0 字符串,否则返回 str

应用举例:

return “dsn/showdsnplugin.do?group=”+StrFunc.null2blank(group);

其余相似办法:
null2default(final String str, final String def)
如果 str 为空时,就用 def 的值进行代替

format2HtmlStr: 将字符串转换为能够在 html 里显示的字符
参数阐明:
@param message 须要转换的字符串
@param ignoreBlank 是否疏忽对空格的解决,对空格的解决是将其转换为 字符输入
@param quateit 是否在返回的后果中减少双引号
@param toTextArea 是否将后果输入到文本编辑框 TextArea 内,如果是则不须要对回车换行与制表符进行转换
@return 解决后的字符串
应用举例:
StrFunc.format2HtmlStr(“<script>alert(‘XSS 击 \r\nO K!’);</script>”);
返回字符串:
<script>alert(‘XSS 击 <br/>O K!’);</script>

参数阐明:
@param message 须要转换的字符串
@return 解决后的字符串

应用举例:
StrFunc.format2HtmlStr(“<script>alert(‘XSS 攻打 \r\nO K!’);</script>”);
返回字符串:
<script>alert(‘XSS 攻打 <br/>O K!’);</script>

相应的其余办法:
format2HtmlStr_ignoreBlank(final String s)
疏忽空格,即空格不转换成,原样输入。其余解决形式与 format2HtmlStr 统一

format2HtmlStr(final String message, final boolean ignoreBlank, final boolean quateit, final boolean toTextArea)
quateit 是否在返回的后果中减少双引号
toTextArea 是否将后果输入到文本编辑框 TextArea 内,如果是则不须要对回车换行与制表符进行转换。即:如果传参 false,回车换行符会转换成 <br/>,否则不进行转换,\r 仍旧返回 \r,\n 仍旧返回 \n。

contains:判断一个字符串是否在一个字符串数组中

参数阐明:
@param array 被搜寻的串数组
@param element 要搜寻的字符串元素
@return element 串若在串数组 array 中返回 ture,反之 false

应用举例:
StrFunc.contains(new String[]{“dfa”,”asdfds”,”c”}, “asdfds”); 返回 true

if(StrFunc.contains(dataBbh.getUpids(), bbh.getId())){…
}

isNumber: 判断字串是否是数字类型字串,包含 int,double

参数阐明:
@param s 要判断是否为数字类型的字符串
@return s 是数字类型字符串返回 true,如果为 null 或长度为 0, 返回 false

应用举例:
StrFunc.isNumber(“0x7F”); 返回 false
StrFunc.isNumber(cl.getProperty(“x”)) ? Integer.parseInt(cl.getProperty(“x”)) : -1;粗体 粗体

正文完
 0