我有一个String str = "a_bcde_fghij_k"
。
我想将其更改为"aBcdeFghijK"
如果具有_
字符,则下一个字符将变为大写并删除_
字符。
我怎样才能做到这一点?
最佳答案
我怀疑您只需要逐个字符地遍历此字符,就可以构建字符串。例如:
public static String underscoreToCapital(String text) {
// This will be a bit bigger than necessary, but that shouldn't matter.
StringBuilder builder = new StringBuilder(text.length());
boolean capitalizeNext = false;
for (int i = 0; i < text.length(); i++) {
char c = text.charAt(i);
if (c == '_') {
capitalizeNext = true;
} else {
builder.append(capitalizeNext ? Character.toUpperCase(c) : c);
capitalizeNext = false;
}
}
return builder.toString();
}