java 工具类实现驼峰和下划线的互相转换

下划线转驼峰

//如果是下划线转驼峰,那么ch就是_
public static String toCamel(String str,String ch){
        if (str.indexOf(ch) == -1)
            return str;
        String[] strings = str.split(ch);
        StringBuffer stringBuffer = new StringBuffer();
        for(int i = 0;i < strings.length;i++){
            if (i == 0)
                stringBuffer.append(strings[i].toLowerCase());
            else
                stringBuffer.append(strings[i].substring(0,1).toUpperCase()).append(strings[i].substring(1).toLowerCase());
        }
        return stringBuffer.toString();
    }

驼峰转下划线

public static String CameltoUnderLine(String str){
        Pattern compile = Pattern.compile("[A-Z]");
        Matcher matcher = compile.matcher(str);
        StringBuffer sb = new StringBuffer();
        while(matcher.find()) {
            //将匹配到的大写字符转换成小写,并且在前面添加下划线然后添加到缓冲区。group(0)在没有分配组的时候匹配所有符合的
            matcher.appendReplacement(sb,  "_" + matcher.group(0).toLowerCase());
        }
        matcher.appendTail(sb);
        return sb.toString();
    }

你可能感兴趣的:(java,java,开发语言)