Overgram/generator/src/main/java/io/github/lonamiwebs/overgram/utils/Utils.java

32 lines
1009 B
Java

package io.github.lonamiwebs.overgram.utils;
public class Utils {
public static String toCamelCase(final String string, final boolean firstUpper) {
final StringBuilder result = new StringBuilder(string.length());
final int dot = string.lastIndexOf(".");
if (dot != -1) {
result.append(string, 0, dot + 1);
}
if (firstUpper) {
result.append(Character.toUpperCase(string.charAt(dot + 1)));
} else {
result.append(Character.toLowerCase(string.charAt(dot + 1)));
}
boolean upperNext = false;
for (int i = dot + 2; i < string.length(); ++i) {
final char c = string.charAt(i);
if (c == '_') {
upperNext = true;
} else if (upperNext) {
upperNext = false;
result.append(Character.toUpperCase(c));
} else {
result.append(c);
}
}
return result.toString();
}
}