Heute musste ich feststellen, daß in den Apache Commons zwar viel drin ist aber keine Funktion zum CamelCasen von Strings.
Da ich aus XML Namen im Format MY_TINY_PROPERTY gerne den Java Propertynamen myTinyProperty haben wollte, musste ich mir selbst behelfen.
private String toCamelCase(String value, boolean startWithLowerCase) { String[] strings = StringUtils.split(value.toLowerCase(), "_"); for (int i = startWithLowerCase ? 1 : 0; i < strings.length; i++){ strings[i] = StringUtils.capitalize(strings[i]); } return StringUtils.join(strings); }
Dieser Helper deckt den Großteil der vorstellbaren Anforderungen ab. Zumindest meine komplett. Alternativ könnte man auch WordUtils#capitalizeFully() verwenden und das Ergebnis noch transformieren.
Der Weg zurück ist noch etwas unschöner, da die Trennzeichen für split() nicht so einfach zu bestimmen sind. In vielen anderen Programmiersprachen findet sich so eine Funktion sogar in den Kernbibliotheken, warum hat Java oder Apache Commons das noch nicht? Patch?








Kategorie:


I do believe that you should submit this idea to the Apache Software Foundation, even if it’s only a JIRA issue to begin with.
You are right Rob:
https://issues.apache.org/jira/browse/LANG-485
been there, done that.