public static String parseHumpName(String str,boolean isFirstUpper,boolean isHump){
  str=str.toLowerCase();
  if (isHump && str.indexOf("_") != -1) {
    boolean isUpper=false;
    StringBuilder builder=new StringBuilder();
    for (    char c : str.toCharArray()) {
      if (isUpper) {
        c=Character.toUpperCase(c);
        isUpper=false;
      }
      if (c == '_') {
        isUpper=true;
        continue;
      }
      builder.append(c);
    }
    str=builder.toString();
  }
  if (isFirstUpper) {
    return upperFirst(str);
  }
  return lowerFirst(str);
}

public static String parseHumpName ( String str , boolean isFirstUpper , boolean isHump ) { str = str . toLowerCase ( ) ; if ( isHump && str . indexOf ( "_" ) != - 1 ) { boolean isUpper = false ; StringBuilder builder = new StringBuilder ( ) ; for ( char c : str . toCharArray ( ) ) { if ( isUpper ) { c = Character . toUpperCase ( c ) ; isUpper = false ; } if ( c == '_' ) { isUpper = true ; continue ; } builder . append ( c ) ; } str = builder . toString ( ) ; } if ( isFirstUpper ) { return upperFirst ( str ) ; } return lowerFirst ( str ) ; }
parse str to hump type < p > if class name , param isfirstupper should be true , else false
