我是靠谱客的博主 高高猫咪,最近开发中收集的这篇文章主要介绍驼峰,下划线(蛇形)和帕斯卡型一些转换,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

    /** 下划线转帕斯卡
     * user_name ----> UserName
     * house.user_name ----> UserName
     * userName ---> UserName
     * @param underlineName 带有下划线的名字
     * @return 帕斯卡字符串
     */
    public static String underlineToPascal(String underlineName) {
        //截取下划线分成数组
        char[] charArray = underlineName.toCharArray();
        //判断上次循环的字符是否是"_"
        boolean underlineBefore = false;
        StringBuffer buffer = new StringBuffer();
        for (int i = 0,l = charArray.length; i < l; i++) {
            //判断当前字符是否是"_",如果跳出本次循环
            if (charArray[i] == 95 ) {
                underlineBefore = true;
            } else if (underlineBefore) {
                //如果为true,代表上次的字符是"_",当前字符需要转成大写
                buffer.append(charArray[i] -= 32);
                underlineBefore = false;
            } else if (i == 0 ){ //首字母大写
                buffer.append(charArray[i] -= 32);
            }else{//不是"_"后的字符就直接追加
                buffer.append(charArray[i]);
            }
        }

        return buffer.toString();
    }

    /** 下划线转驼峰
     * user_name ----> userName
     * house.user_name ----> userName
     * userName ---> userName
     * @param underlineName 带有下划线的名字
     * @return 驼峰字符串
     */
    public static String underlineToHump(String underlineName) {
        //截取下划线分成数组
        char[] charArray = underlineName.toCharArray();
        //判断上次循环的字符是否是"_"
        boolean underlineBefore = false;
        StringBuffer buffer = new StringBuffer();
        for (int i = 0,l = charArray.length; i < l; i++) {
            //判断当前字符是否是"_",如果跳出本次循环
            if (charArray[i] == 95) {
                    underlineBefore = true;
            } else if (underlineBefore) {
            //如果为true,代表上次的字符是"_",当前字符需要转成大写
                buffer.append(charArray[i] -= 32);
                underlineBefore = false;
            } else { //不是"_"后的字符就直接追加
                buffer.append(charArray[i]);
            }
        }
        return buffer.toString();
    }

    /** 驼峰转下划线
     * userName ----> user_name
     * user_name ----> user_name
     * @param humpName 驼峰命名
     * @return 带下滑线的String
     */
    public static String humpToUnderline(String humpName) {
        //截取下划线分成数组,
        char[] charArray = humpName.toCharArray();
        StringBuffer buffer = new StringBuffer();
        //处理字符串
        for (int i = 0,l=charArray.length; i < l; i++) {
            if (charArray[i] >= 65 && charArray[i] <= 90) {
                buffer.append("_").append(charArray[i] += 32);
            }else {
                buffer.append(charArray[i]);
            }
        }

        return buffer.toString();
    }

仅提供参考 

最后

以上就是高高猫咪为你收集整理的驼峰,下划线(蛇形)和帕斯卡型一些转换的全部内容,希望文章能够帮你解决驼峰,下划线(蛇形)和帕斯卡型一些转换所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部