낙타봉 구조

1635 단어
대상이나 속성을 낙타봉 구조로 바꾸는 것은 몇 년 전의 코드이다

/**
	 *      :   gmt_modify ==> gmtModify
	 *
	 * @param columName
	 * @return
	 */
	public static String camelName(String columName) {
		StringBuilder result = new StringBuilder();
		String[] column_s = columName.split("_");
		int i = 0;
		for (String column_ : column_s) {
			if (i == 0) {
				if (StringUtils.isBlank(column_)) { 
					return columName;
				}
				result.append(column_);
			} else {
				if (StringUtils.isNotBlank(column_)) {
					result.append(column_.substring(0, 1).toUpperCase())
							.append(column_.substring(1));
				}
			}
			i++;
		}
		return result.toString();
	}

코드 논리 회색은 항상 간단합니다,대문자로 고치다.
스프링의 원본 코드를 보고 문자 그룹을 사용하면 효율적으로 사용할 수 있습니다

/**
	 *      :   gmt_modify ==> gmtModify
	 *
	 * @param columName
	 * @return
	 */
	public static String camelName(String columName) {
		 char[] chars = columName.toCharArray();
		 char[] result = new char[chars.length];
		 int curpos = 0;
		 boolean upperCaseNext = false;
		 for(char ch:chars){
			 if(ch == '_'){
				 upperCaseNext = true;
			 }else if(upperCaseNext){
				 result[curpos++] = Character.toUpperCase(ch);
				 upperCaseNext = false;
			 }else{
				 result[curpos++] = ch;
			 }
		 }
		 return new String(result,0,curpos);
	}

문자열을 옮겨다니며 문자를 바꿉니다.

좋은 웹페이지 즐겨찾기