我有一个字符串string_function_test.I需要将此字符串转换为stringFunctionTest。我怎么能用java做到这一点。
答案 0 :(得分:4)
使用Guava:
CaseFormat.LOWER_UNDERSCORE.to(CaseFormat.LOWER_CAMEL, "string_function_test");
// returns "stringFunctionTest"
答案 1 :(得分:3)
public static String camelcasify(String in) {
StringBuilder sb = new StringBuilder();
boolean capitalizeNext = false;
for (char c : in.toCharArray()) {
if (c == '_') {
capitalizeNext = true;
} else {
if (capitalizeNext) {
sb.append(Character.toUpperCase(c));
capitalizeNext = false;
} else {
sb.append(c);
}
}
}
return sb.toString();
}
这是一种基本方法。缺少什么:对格式错误的字符串进行一些特殊处理(如有必要)
答案 2 :(得分:0)
StringBuffer s = new StringBuffer("skasd_kjsdh_kas_jd");
for(int i=0;i<s.length();i++)
{
if(s.charAt(i)=='_')
{
s.setCharAt(i,Character.toUpperCase(s.charAt(i+1)));
s.deleteCharAt(i+1);
}
}
System.out.println(s);
注意:如果下划线有下划线,则会抛出StringIndexOutOfBoundsException
。