天天看点

java中的驼峰转换为下划线的方法

驼峰转换为下划线的方法

/**
	 * 驼峰转下划线
	 *
	 * @param str
	 * @return
	 */
	public static String camelToUnderline(String str) {
		if (str == null || str.trim().isEmpty()){
			return "";
		}
		int len = str.length();
		StringBuilder sb = new StringBuilder(len);
		sb.append(str.substring(0, 1).toLowerCase());
		for (int i = 1; i < len; i++) {
			char c = str.charAt(i);
			if (Character.isUpperCase(c)) {
				sb.append("_");
				sb.append(Character.toLowerCase(c));
			} else {
				sb.append(c);
			}
		}
		return sb.toString();
	}           

https://www.aliyun.com/jiaocheng/860569.html

中的改进,因为上述中的方法存在的问题是如果首字母是大写的比如“UserInfo”,进行转换的话结果是“_user_info”。上面的代码是先将字符串转换为小写之后再进行处理。