java方法-处理命名方式互转(蛇形和驼峰形)-在线测试

29 篇文章 0 订阅
6 篇文章 0 订阅

参数的命名方式:
一. 蛇形法
全由小写字母和下划线组成,在两个单词之间用下滑线连接即可,
如:first_name、last_name。
二. 驼峰法
是当变量名或函式名是由一个或多个单词连结在一起,而构成的唯一识别字时,
第一个单词以小写字母开始;第二个单词的首字母大写或每一个单词的首字母都采用大写字母,
例如:firstName、lastName,
这样的变量名看上去就像骆驼峰一样此起彼伏。
可读性:蛇形命名法用下划线拉大词距,更清楚易读;驼峰命名法的变量名紧凑,节省行宽;
易写性:驼峰命名法以大小写为区分,不引入额外的标识符;蛇形命名法统一小写,输入相对方便

参考

命名方式的互转(蛇形和驼峰形)——java
蛇形命名,驼峰命名,你的选择?
在线运行Java

代码

public class Main {
    public static void main(String []args) {
       System.out.println("Hello World!");
       System.out.println(toHumpStr("a"));
       System.out.println(toHumpStr("a_"));
       System.out.println(toHumpStr("a_b"));
       System.out.println(toHumpStr("a_bc_d"));
       System.out.println(toSnakeStr("a"));
       System.out.println(toSnakeStr("aB"));
       System.out.println(toSnakeStr("aBc"));
       System.out.println(toSnakeStr("aBcD"));
    }
	private static final String S_ = "_";
    /** 蛇形转驼峰形 */
    public static String toHumpStr(String snakeStr) {
        if(null == snakeStr || !snakeStr.contains(S_)){ return snakeStr; }
        StringBuilder sb = new StringBuilder();
        char[] chars = snakeStr.toCharArray();
        boolean is = false;
        for (char c : chars) {
            if( '_' == c ){
                is = true;
            }else if( is ){
                sb.append(Character.toUpperCase(c));
                is = false;
            }else{
                sb.append(c);
            }
        }
        return sb.toString();
    }
    /** 驼峰形转蛇形 */
    public static String toSnakeStr(String humpStr) {
        if( null == humpStr || humpStr.length() <= 1 ){ return humpStr; }
        StringBuilder sb = new StringBuilder(humpStr.length());
        char[] chars = humpStr.toCharArray();
        for (char c : chars) {
            if(Character.isUpperCase(c)){ sb.append(S_); }
            sb.append(c);
        }
        return sb.toString().toLowerCase();
    }
}

在线测试

在这里插入图片描述

Hello World!
a
a
aB
aBcD
a
a_b
a_bc
a_bc_d

END

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值