package com.moral.util;
|
|
import org.mockito.internal.util.StringUtil;
|
|
import java.util.regex.Matcher;
|
import java.util.regex.Pattern;
|
|
/**
|
* @ClassName ConvertUtils
|
* @Description TODO
|
* @Author 陈凯裕
|
* @Date 2021/3/26 14:52
|
* @Version TODO
|
**/
|
public class ConvertUtils {
|
|
|
/**
|
* @Description: 下划线转驼峰
|
* @Param: [underscore]
|
* @return: java.lang.String
|
* @Author: 陈凯裕
|
* @Date: 2021/3/26
|
*/
|
public static String underscoreToCamelCase(String underscore) {
|
String[] ss = underscore.split("_");
|
if (ss.length == 1) {
|
return underscore;
|
}
|
|
StringBuffer sb = new StringBuffer();
|
sb.append(ss[0]);
|
for (int i = 1; i < ss.length; i++) {
|
sb.append(upperFirstCase(ss[i]));
|
}
|
|
return sb.toString();
|
}
|
|
/**
|
* @Description: 驼峰转下划线
|
* @Param: [camelCase]
|
* @return: java.lang.String
|
* @Author: 陈凯裕
|
* @Date: 2021/3/26
|
*/
|
public static String toLine(String camelCase) {
|
Pattern humpPattern = Pattern.compile("[A-Z]");
|
Matcher matcher = humpPattern.matcher(camelCase);
|
StringBuffer sb = new StringBuffer();
|
while (matcher.find()) {
|
matcher.appendReplacement(sb, "_" + matcher.group(0).toLowerCase());
|
}
|
matcher.appendTail(sb);
|
return sb.toString();
|
}
|
|
|
/**
|
* @Description: 首字母转为小写
|
* @Param: [str]
|
* @return: java.lang.String
|
* @Author: 陈凯裕
|
* @Date: 2021/3/26
|
*/
|
private static String lowerFirstCase(String str) {
|
char[] chars = str.toCharArray();
|
chars[0] += 32;
|
return String.valueOf(chars);
|
}
|
|
/**
|
* @Description: 首字母转为大写
|
* @Param: [str]
|
* @return: java.lang.String
|
* @Author: 陈凯裕
|
* @Date: 2021/3/26
|
*/
|
private static String upperFirstCase(String str) {
|
char[] chars = str.toCharArray();
|
chars[0] -= 32;
|
return String.valueOf(chars);
|
}
|
|
|
|
|
}
|