Spring中Utils的使用系列:StringUtils
Posted mrain22
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring中Utils的使用系列:StringUtils相关的知识,希望对你有一定的参考价值。
在Spring中,有非常多Utils工具类,这些工具类有的是为了开发者使用的,有的只是提供给Spring框架使用的。了解这些工具类,在适当的时候使用这些工具类,对我们平时的开发还是很有帮助的,能极大方便我们的开发。
Spring的工具类都是以Utils结尾,所以要查看这些工具类,只需要在API文档中查询所有*Utils即可,可以看到有多达几十个。在后面的几篇文章中我会选择几个常用的Utils,给大家展示一下Spring中的工具类的有用和常用方法。
更多详细内容请阅读原文!
Boolean
属于该组的方法都是在对字符串进行一些判定操作:
1 2 3 4 5 6
|
assertFalse(StringUtils.hasText(" "));
assertTrue(StringUtils.containsWhitespace("a b"));
|
字符串头尾操作
属于该类别的方法,都是对字符串前,或者字符串后的内容进行判定或者操作;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
assertEquals("abc", StringUtils.trimWhitespace(" abc "));
assertEquals("abc", StringUtils.trimAllWhitespace(" a b c "));
assertTrue(StringUtils.startsWithIgnoreCase("abcd", "AB"));
|
文件路径名称相关操作
文件路径名称相关操作,是针对文件名,文件路径,文件后缀等常见文件操作中需要用到的方法进行封装;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
assertEquals("java", StringUtils.unqualify("cn.wolfcode.java")); assertEquals("java", StringUtils.unqualify("cn/wolfcode/Hello.java"));
assertEquals("Hello.java", StringUtils .unqualify("cn/wolfcode/Hello.java", File.separatorChar));
assertEquals("Wolfcode", StringUtils.capitalize("wolfcode"));
assertEquals("java", StringUtils.uncapitalize("Java"));
assertEquals("myfile.txt", StringUtils.getFilename("mypath/myfile.txt"));
assertEquals("txt", StringUtils.getFilenameExtension("mypath/myfile.txt"));
assertEquals("mypath/myfile", StringUtils.stripFilenameExtension("mypath/myfile.txt"));
System.out.println(StringUtils.applyRelativePath( "d:/java/wolfcode/Test.java", "other/Some.java"));
System.out.println(StringUtils.applyRelativePath( "d:/java/wolfcode/Test.java", "../other/Some.java"));
System.out.println( StringUtils.cleanPath("d:/java/wolfcode/../other/Some.java"));
System.out.println(StringUtils.cleanPath(StringUtils.applyRelativePath( "d:/java/wolfcode/Test.java", "../../other/Some.java")));
assertTrue(StringUtils.pathEquals("d:/wolfcode.txt", "d:/somefile/../wolfcode.txt"))
|
字符串和子串的操作
该组方法中主要是提供了字符串和字符串子串的操作,比如子串的匹配,子串的替换;子串的删除等等操作;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
assertTrue(StringUtils.substringMatch("aabbccdd", 1, "abb"));
assertEquals(4, StringUtils.countOccurrencesOf("ababaabab", "ab"));
assertEquals("cdcdacdcd", StringUtils.replace("ababaabab", "ab", "cd"));
assertEquals("a", StringUtils.delete("ababaabab", "ab"));
assertEquals("", StringUtils.deleteAny("ababaabab", "bar"));
assertEquals("‘hello‘", StringUtils.quote("hello"));
|
本地化相关
和Locale相关的一些字符串操作;
1 2 3 4 5 6 7 8
|
assertEquals(Locale.CHINA, StringUtils.parseLocaleString("zh_CN"));
System.out.println(StringUtils .toLanguageTag(StringUtils.parseLocaleString("zh_CN")));
|
字符串和Properties
把字符串和Properties对象之间的相互转化抽取出的一些常用方法;
1 2 3 4 5 6 7 8 9
|
String[] strs=new String[]{"key:value","key2:中文"}; Properties ps=StringUtils.splitArrayElementsIntoProperties(strs, ":");
System.out.println(ps);
|
字符串和数组之间的基本操作
该组方法主要是完成字符串和字符串数组之间的基本操作,比如追加,删除,排序等;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
System.out.println(Arrays.toString(StringUtils .addStringToArray(new String[] { "a", "b", "c" }, "d")));
System.out.println(Arrays.toString(StringUtils.concatenateStringArrays( new String[] { "a", "b", "c" }, new String[] { "a", "b", "c","d" })));
System.out.println(Arrays.toString(StringUtils.mergeStringArrays( new String[] { "a", "b", "c" }, new String[] { "a", "b", "c","d" })));
System.out.println(Arrays.toString(StringUtils.sortStringArray(new String[]{"d","c","b","a"})));
|
字符串和数组的更多方法
在该组方法中,提供了更多字符串和数组的方法,主要涉及到字符串数组的合并,字符串的按规则拆分,字符串和集合之间的相互转化等操作;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
assertArrayEquals(new String[]{"wolfcode","cn"}, StringUtils.split("wolfcode.cn", "."));
System.out.println(Arrays.toString(StringUtils.split("www.wolfcode.cn", ".")));
System.out.println(Arrays.toString(StringUtils.tokenizeToStringArray("aa,ba,ca,da", "a,")));
System.out.println(Arrays.toString(StringUtils.delimitedListToStringArray("aa,ba,ca,da", "a,")));
String[] arrs=new String[]{"aa","bb","cc","dd"}; assertEquals("{aa},{bb},{cc},{dd}", StringUtils.collectionToDelimitedString(Arrays.asList(arrs),",","{","}"));
|
在Spring中,有非常多Utils工具类,这些工具类有的是为了开发者使用的,有的只是提供给Spring框架使用的。了解这些工具类,在适当的时候使用这些工具类,对我们平时的开发还是很有帮助的,能极大方便我们的开发。
Spring的工具类都是以Utils结尾,所以要查看这些工具类,只需要在API文档中查询所有*Utils即可,可以看到有多达几十个。在后面的几篇文章中我会选择几个常用的Utils,给大家展示一下Spring中的工具类的有用和常用方法。
更多详细内容请阅读原文!
首先,这个工具类里面的所有方法,都是针对字符串常见操作,其次,里面有不少方法,即可以针对String,也可以使用CharSequence;
判断类
属于该类别的方法都是在对字符串进行一些判定操作:
字符串头尾操作
属于该类别的方法,都是对字符串前,或者字符串后的内容进行判定或者操作;
文件路径名称相关操作
文件路径名称相关操作,是针对文件名,文件路径,文件后缀等常见文件操作中需要用到的方法进行封装;
字符串和子串的操作
该组方法中主要是提供了字符串和字符串子串的操作,比如子串的匹配,子串的替换;子串的删除等等操作;
本地化相关
和Locale相关的一些字符串操作;
字符串和Properties
把字符串和Properties对象之间的相互转化抽取出的一些常用方法;
字符串和数组之间的基本操作
该组方法主要是完成字符串和字符串数组之间的基本操作,比如追加,删除,排序等;
字符串和数组的更多方法
在该组方法中,提供了更多字符串和数组的方法,主要涉及到字符串数组的合并,字符串的按规则拆分,字符串和集合之间的相互转化等操作;
以上是关于Spring中Utils的使用系列:StringUtils的主要内容,如果未能解决你的问题,请参考以下文章
带你了解Spring中的各种Utils
Spring中你不得不知的各种Utils
SpringSpring系列6之Spring整合Hibernate
Spring @Autowired注解在utils静态工具类
异常捕获处理与抛出
javascript Nowa数据ze stringu