public class StrKit extends Object
| 限定符和类型 | 字段和说明 |
|---|---|
static String |
BACKSLASH |
static String |
COMMA |
static String |
CRLF |
static String |
DOT |
static String |
EMPTY |
static String |
EMPTY_JSON |
static String |
HTML_AMP |
static String |
HTML_GT |
static String |
HTML_LT |
static String |
HTML_NBSP |
static String |
HTML_QUOTE |
static String |
NEWLINE |
static String |
SLASH |
static String |
SPACE |
static String |
UNDERLINE |
| 限定符和类型 | 方法和说明 |
|---|---|
static String |
addPrefixIfNot(String str,
String prefix)
如果给定字符串不是以prefix开头的,在开头补充 prefix
|
static String |
addSuffixIfNot(String str,
String suffix)
如果给定字符串不是以suffix结尾的,在尾部补充 suffix
|
static StringBuilder |
builder()
创建StringBuilder对象
|
static StringBuilder |
builder(int capacity)
创建StringBuilder对象
|
static StringBuilder |
builder(String... strs)
创建StringBuilder对象
|
static ByteBuffer |
byteBuffer(String str,
String charset)
字符串转换为byteBuffer
|
static byte[] |
bytes(String str,
Charset charset)
编码字符串
|
static byte[] |
bytes(String str,
String charset)
编码字符串
|
static String |
cleanBlank(String str)
清理空白字符
|
static boolean |
containsIgnoreCase(String str,
String testStr)
是否包含特定字符,忽略大小写,如果给定两个参数都为
null,返回true |
static String |
cutPreAndLowerFirst(String str,
int preLength)
去掉首部指定长度的字符串并将剩余字符串首字母小写
例如:str=setName, preLength=3 -> return name |
static String |
decode(byte[] data,
String charset)
解码字节码
|
static String |
emptyToNull(String str)
当给定字符串为空字符串时,转换为
null |
static byte[] |
encode(String str,
String charset)
编码字符串
|
static boolean |
endWith(String str,
String suffix,
boolean isIgnoreCase)
是否以指定字符串结尾
|
static boolean |
equals(String str1,
String str2)
比较两个字符串(大小写敏感)。
|
static boolean |
equalsIgnoreCase(String str1,
String str2)
比较两个字符串(大小写不敏感)。
|
static String |
escapeJava(String str)
添加转义字符
|
static String |
firstCharToLowerCase(String str)
首字母变小写
|
static String |
firstCharToUpperCase(String str)
首字母变大写
|
static String |
format(String template,
List<Object> values)
格式化文本, {} 表示占位符
例如:format("aaa {} ccc", "bbb") ----> aaa bbb ccc |
static String |
format(String template,
Map<?,?> map)
格式化文本,使用 {varName} 占位
map = {a: "aValue", b: "bValue"} format("{a} and {b}", map) ----> aValue and bValue |
static String |
format(String template,
Object... values)
格式化文本, {} 表示占位符
例如:format("aaa {} ccc", "bbb") ----> aaa bbb ccc |
static String |
formatOne(String template,
Object value)
格式化文本, {} 表示占位符
多个{}将被替换为一个值 例如:format("aaa {} ccc {}" , "bbb") ----> aaa bbb ccc bbb |
static String |
genGetter(String fieldName)
生成get方法名
|
static String |
genSetter(String fieldName)
生成set方法名
例如:name 返回 setName |
static byte[] |
getBytes(String str,
Charset charset)
获得字符串对应byte数组
|
static String |
getGeneralField(String getOrSetMethodName)
获得set或get方法对应的标准属性名
例如:setName 返回 name |
static StringReader |
getReader(String str)
获得StringReader
|
static StringWriter |
getWriter()
获得StringWriter
|
static boolean |
hasBlank(String... strs)
是否包含空字符串
|
static boolean |
hasEmpty(String... strs)
是否包含空字符串
|
static boolean |
isAllBlank(String... strs)
给定所有字符串是否为空白
|
static boolean |
isAllEmpty(String... strs)
是否全部为空字符串
|
static boolean |
isBlank(String str)
字符串是否为空白 空白的定义如下:
1、为null 2、为不可见字符(如空格) 3、"" |
static boolean |
isEmpty(String str)
字符串是否为空,空的定义如下 1、为null
2、为"" |
static boolean |
isNotEmpty(String str)
字符串是否为非空白 空白的定义如下:
1、不为null 2、不为"" |
static boolean |
isSurround(String str,
char prefix,
char suffix)
给定字符串是否被字符包围
|
static boolean |
isSurround(String str,
String prefix,
String suffix)
给定字符串是否被字符包围
|
static boolean |
isWrap(String str,
char wrapper)
指定字符串是否被同一字符包装(前后都有这些字符串)
|
static boolean |
isWrap(String str,
char prefixChar,
char suffixChar)
指定字符串是否被包装
|
static boolean |
isWrap(String str,
String wrapper)
指定字符串是否被同一字符包装(前后都有这些字符串)
|
static boolean |
isWrap(String str,
String prefix,
String suffix)
指定字符串是否被包装
|
static <T> String |
join(String conjunction,
List<T> objs)
以 conjunction 为分隔符将多个对象转换为字符串
|
static <T> String |
join(String conjunction,
T... objs)
以 conjunction 为分隔符将多个对象转换为字符串
|
static <E> String |
listStitchingStr(Collection<E> list,
ConsumerResult<E,String> consumer)
集合取字段拼接为字符串
|
static <E> String |
listStitchingStr(ConsumerResult<E,String> consumer,
E... list)
数组取字段拼接为字符串
|
static <E> String |
listStitchingStr(Iterable<E> list,
String sep,
ConsumerResult<E,String> consumer)
集合取字段拼接为字符串
|
static String |
lowerFirst(String str)
小写首字母
例如:str = Name, return name |
static boolean |
notBlank(String str)
字符串是否为非空白 空白的定义如下:
1、不为null 2、不为不可见字符(如空格) 3、不为"" |
static String |
nullToDefault(String str,
String defaultStr)
如果字符串是
null,则返回指定默认字符串,否则返回字符串本身。 |
static String |
nullToEmpty(String str)
当给定字符串为null时,转换为Empty
|
static String |
padEnd(String str,
int minLength,
char padChar)
补充字符串以满足最小长度 StrUtil.padEnd("1", 3, '0');//"100"
|
static String |
padPre(String str,
int minLength,
char padChar)
补充字符串以满足最小长度 StrUtil.padPre("1", 3, '0');//"001"
|
static String |
removePrefix(String str,
String prefix)
去掉指定前缀
|
static String |
removePrefixIgnoreCase(String str,
String prefix)
忽略大小写去掉指定前缀
|
static String |
removeSuffix(String str,
String suffix)
去掉指定后缀
|
static String |
removeSuffixIgnoreCase(String str,
String suffix)
忽略大小写去掉指定后缀
|
static String |
repeat(char c,
int count)
重复某个字符
|
static String |
repeat(String str,
int count)
重复某个字符串
|
static List<String> |
split(String str,
char separator)
切分字符串
a#b#c -> [a,b,c] a##b#c -> [a,"",b,c] |
static List<String> |
split(String str,
char separator,
int limit)
切分字符串
|
static String[] |
split(String str,
String delimiter)
切分字符串
from jodd |
static boolean |
startWith(String str,
String prefix,
boolean isIgnoreCase)
是否以指定字符串开头
|
static <E> String |
stitchingStr(String sep,
E... list)
多个字符串拼接
|
static String |
str(byte[] data,
Charset charset)
解码字节码
|
static String |
str(byte[] bytes,
String charset)
将byte数组转为字符串
|
static String |
str(ByteBuffer data,
Charset charset)
将编码的byteBuffer数据转换为字符串
|
static String |
str(ByteBuffer data,
String charset)
将编码的byteBuffer数据转换为字符串
|
static String |
sub(String string,
int fromIndex,
int toIndex)
改进JDK subString
index从0开始计算,最后一个字符为-1 如果from和to位置一样,返回 "" 如果from或to为负数,则按照length从后向前数位置,如果绝对值大于字符串长度,则from归到0,to归到length 如果经过修正的index中from大于to,则互换from和to example: abcdefgh 2 3 -> c abcdefgh 2 -3 -> cde |
static String |
subPre(String string,
int toIndex)
切割前部分
|
static String |
subSuf(String string,
int fromIndex)
切割后部分
|
static String |
toCamelCase(String name)
将下划线方式命名的字符串转换为驼峰式。
|
static String |
toCamelCase(String name,
String underline)
将下划线方式命名的字符串转换为驼峰式。
|
static String |
toSBC(String str)
全角转半角
|
static String |
toUnderlineCase(String camelCaseStr)
将驼峰式命名的字符串转换为下划线方式。
|
static String |
toUnderlineCase(String camelCaseStr,
String underline)
将字符串进行驼峰命名转换
|
static String |
trim(String str)
除去字符串头尾部的空白,如果字符串是
null,依然返回null。 |
static void |
trim(String[] strs)
给定字符串数组全部做去首尾空格
|
static String |
trim(String str,
int mode)
除去字符串头尾部的空白符,如果字符串是
null,依然返回null。 |
static String |
trimEnd(String str)
除去字符串尾部的空白,如果字符串是
null,则返回null。 |
static String |
trimStart(String str)
除去字符串头部的空白,如果字符串是
null,则返回null。 |
static String |
unescapeJava(String str)
去除字符串中的转义字符
|
static String |
unescapeJson(String str)
去除json字符串中的转义字符
|
static String |
upperFirst(String str)
大写首字母
例如:str = name, return Name |
static String |
upperFirstAndAddPre(String str,
String preString)
原字符串首字母大写并在其首部添加指定字符串 例如:str=name, preString=get -> return getName
|
static String |
wrap(String str,
String prefix,
String suffix)
包装指定字符串
|
public static <E> String listStitchingStr(Collection<E> list, ConsumerResult<E,String> consumer)
E - 泛型list - 集合对象consumer - 表达式执行者@SafeVarargs public static <E> String listStitchingStr(ConsumerResult<E,String> consumer, E... list)
E - 泛型list - 集合对象consumer - 表达式执行者@SafeVarargs public static <E> String stitchingStr(String sep, E... list)
E - 泛型sep - 分隔符list - 多个对象public static <E> String listStitchingStr(Iterable<E> list, String sep, ConsumerResult<E,String> consumer)
E - 泛型list - 集合对象sep - 分隔符consumer - 表达式执行者public static boolean isBlank(String str)
str - 被检测的字符串public static boolean notBlank(String str)
str - 被检测的字符串public static boolean hasBlank(String... strs)
strs - 字符串列表public static boolean isAllBlank(String... strs)
strs - 字符串public static boolean isEmpty(String str)
str - 被检测的字符串public static boolean isNotEmpty(String str)
str - 被检测的字符串public static String nullToEmpty(String str)
str - 被转换的字符串public static String nullToDefault(String str, String defaultStr)
null,则返回指定默认字符串,否则返回字符串本身。
nullToDefault(null, "default") = "default"
nullToDefault("", "default") = ""
nullToDefault(" ", "default") = " "
nullToDefault("bat", "default") = "bat"
str - 要转换的字符串defaultStr - 默认字符串public static String emptyToNull(String str)
nullstr - 被转换的字符串public static boolean hasEmpty(String... strs)
strs - 字符串列表public static boolean isAllEmpty(String... strs)
strs - 字符串列表public static String trim(String str)
null,依然返回null。
注意,和String.trim不同,此方法使用Character.isWhitespace 来判定空白, 因而可以除去英文字符集之外的其它空白,如中文空格。
trim(null) = null
trim("") = ""
trim(" ") = ""
trim("abc") = "abc"
trim(" abc ") = "abc"
str - 要处理的字符串null,则返回nullpublic static void trim(String[] strs)
strs - 字符串数组public static String trimStart(String str)
null,则返回null。
注意,和String.trim不同,此方法使用Character.isWhitespace 来判定空白, 因而可以除去英文字符集之外的其它空白,如中文空格。
trimStart(null) = null
trimStart("") = ""
trimStart("abc") = "abc"
trimStart(" abc") = "abc"
trimStart("abc ") = "abc "
trimStart(" abc ") = "abc "
str - 要处理的字符串null或结果字符串为"",则返回 nullpublic static String trimEnd(String str)
null,则返回null。
注意,和String.trim不同,此方法使用Character.isWhitespace 来判定空白, 因而可以除去英文字符集之外的其它空白,如中文空格。
trimEnd(null) = null
trimEnd("") = ""
trimEnd("abc") = "abc"
trimEnd(" abc") = " abc"
trimEnd("abc ") = "abc"
trimEnd(" abc ") = " abc"
str - 要处理的字符串null或结果字符串为"",则返回 nullpublic static String trim(String str, int mode)
null,依然返回null。str - 要处理的字符串mode - -1表示trimStart,0表示trim全部, 1表示trimEndnull,则返回nullpublic static boolean startWith(String str, String prefix, boolean isIgnoreCase)
str - 被监测字符串prefix - 开头字符串isIgnoreCase - 是否忽略大小写public static boolean endWith(String str, String suffix, boolean isIgnoreCase)
str - 被监测字符串suffix - 结尾字符串isIgnoreCase - 是否忽略大小写public static boolean containsIgnoreCase(String str, String testStr)
null,返回truestr - 被检测字符串testStr - 被测试是否包含的字符串public static String getGeneralField(String getOrSetMethodName)
getOrSetMethodName - get获取set的方法名称public static String genSetter(String fieldName)
fieldName - 属性名public static String cutPreAndLowerFirst(String str, int preLength)
str - 被处理的字符串preLength - 去掉的长度public static String upperFirstAndAddPre(String str, String preString)
str - 被处理的字符串preString - 添加的首部public static String upperFirst(String str)
str - 字符串public static String lowerFirst(String str)
str - 字符串public static String removePrefix(String str, String prefix)
str - 字符串prefix - 前缀public static String removePrefixIgnoreCase(String str, String prefix)
str - 字符串prefix - 前缀public static String removeSuffix(String str, String suffix)
str - 字符串suffix - 后缀public static byte[] getBytes(String str, Charset charset)
str - 字符串charset - 编码,如果为null使用系统默认编码public static String removeSuffixIgnoreCase(String str, String suffix)
str - 字符串suffix - 后缀public static String addPrefixIfNot(String str, String prefix)
str - 字符串prefix - 前缀public static String addSuffixIfNot(String str, String suffix)
str - 字符串suffix - 后缀public static List<String> split(String str, char separator)
str - 被切分的字符串separator - 分隔符字符public static List<String> split(String str, char separator, int limit)
str - 被切分的字符串separator - 分隔符字符limit - 限制分片数 0则不限制public static String[] split(String str, String delimiter)
str - 被切分的字符串delimiter - 分隔符public static String sub(String string, int fromIndex, int toIndex)
string - StringfromIndex - 开始的index(包括)toIndex - 结束的index(不包括)public static String subPre(String string, int toIndex)
string - 字符串toIndex - 切割到的位置(不包括)public static String subSuf(String string, int fromIndex)
string - 字符串fromIndex - 切割开始的位置(包括)public static boolean isSurround(String str, String prefix, String suffix)
str - 字符串prefix - 前缀suffix - 后缀public static boolean isSurround(String str, char prefix, char suffix)
str - 字符串prefix - 前缀suffix - 后缀public static String repeat(char c, int count)
c - 被重复的字符count - 重复的数目public static String repeat(String str, int count)
str - 被重复的字符count - 重复的数目public static boolean equals(String str1, String str2)
equals(null, null) = true
equals(null, "abc") = false
equals("abc", null) = false
equals("abc", "abc") = true
equals("abc", "ABC") = false
str1 - 要比较的字符串1str2 - 要比较的字符串2null,则返回truepublic static boolean equalsIgnoreCase(String str1, String str2)
equalsIgnoreCase(null, null) = true
equalsIgnoreCase(null, "abc") = false
equalsIgnoreCase("abc", null) = false
equalsIgnoreCase("abc", "abc") = true
equalsIgnoreCase("abc", "ABC") = true
str1 - 要比较的字符串1str2 - 要比较的字符串2null,则返回truepublic static String formatOne(String template, Object value)
template - 文本模板,被替换的部分用 {} 表示value - 参数值public static String format(String template, List<Object> values)
template - 文本模板,被替换的部分用 {} 表示values - 参数值public static String format(String template, Object... values)
template - 文本模板,被替换的部分用 {} 表示values - 参数值public static String format(String template, Map<?,?> map)
template - 文本模板,被替换的部分用 {key} 表示map - 参数值对public static byte[] bytes(String str, String charset)
str - 字符串charset - 字符集,如果此字段为空,则解码的结果取决于平台public static byte[] bytes(String str, Charset charset)
str - 字符串charset - 字符集,如果此字段为空,则解码的结果取决于平台public static String str(byte[] bytes, String charset)
bytes - byte数组charset - 字符集public static String str(byte[] data, Charset charset)
data - 字符串charset - 字符集,如果此字段为空,则解码的结果取决于平台public static String str(ByteBuffer data, String charset)
data - 数据charset - 字符集,如果为空使用当前系统字符集public static String str(ByteBuffer data, Charset charset)
data - 数据charset - 字符集,如果为空使用当前系统字符集public static ByteBuffer byteBuffer(String str, String charset)
str - 字符串charset - 编码public static <T> String join(String conjunction, List<T> objs)
conjunction - 分隔符objs - 数组public static <T> String join(String conjunction, T... objs)
conjunction - 分隔符objs - 数组public static String toUnderlineCase(String camelCaseStr)
camelCaseStr - 转换前的驼峰式命名的字符串public static String toUnderlineCase(String camelCaseStr, String underline)
camelCaseStr - 转换前的驼峰式命名的字符串underline - 转小写分隔符public static String toCamelCase(String name)
name - 转换前的下划线大写方式命名的字符串public static String toCamelCase(String name, String underline)
name - 转换前的下划线大写方式命名的字符串underline - 连接符号public static String wrap(String str, String prefix, String suffix)
str - 被包装的字符串prefix - 前缀suffix - 后缀public static boolean isWrap(String str, String prefix, String suffix)
str - 字符串prefix - 前缀suffix - 后缀public static boolean isWrap(String str, String wrapper)
str - 字符串wrapper - 包装字符串public static boolean isWrap(String str, char wrapper)
str - 字符串wrapper - 包装字符public static boolean isWrap(String str, char prefixChar, char suffixChar)
str - 字符串prefixChar - 前缀suffixChar - 后缀public static String padPre(String str, int minLength, char padChar)
str - 字符串minLength - 最小长度padChar - 补充的字符public static String padEnd(String str, int minLength, char padChar)
str - 字符串minLength - 最小长度padChar - 补充的字符public static StringBuilder builder()
public static StringBuilder builder(int capacity)
public static StringBuilder builder(String... strs)
public static StringReader getReader(String str)
str - 字符串public static StringWriter getWriter()
public static byte[] encode(String str, String charset)
str - 字符串charset - 字符集,如果此字段为空,则解码的结果取决于平台Copyright © 2019. All rights reserved.