Java-Beispiel

snake_case in Java zu camelCase konvertieren

Tokens an Unterstrichen trennen, mit Locale.ROOT normalisieren und alle Tokens nach dem ersten kapitalisieren.

Von Camel Case Converter RedaktionVeröffentlicht 12.09.2026Zuletzt geprüft

Java-Code

import java.util.Locale;

static String snakeToCamel(String value) {
    String cleaned = value.trim().replaceAll("^_+|_+$", "");
    if (cleaned.isEmpty()) return "";
    String[] parts = cleaned.split("_+");
    StringBuilder result = new StringBuilder(parts[0].toLowerCase(Locale.ROOT));
    for (int i = 1; i < parts.length; i++) {
        String part = parts[i].toLowerCase(Locale.ROOT);
        if (part.isEmpty()) continue;
        result.append(Character.toUpperCase(part.charAt(0)));
        result.append(part.substring(1));
    }
    return result.toString();
}

snakeToCamel("user_profile_image");
// "userProfileImage"

Locale.ROOT verhindert, dass Identifier-Casing von der Benutzer-Locale des Systems abhängt.

StringBuilder verbindet Tokens effizient; gemischte Separatoren und Akronyme brauchen zusätzliche Regeln.

Zu beachtende Grenzfälle

  • Akronym-Casing sollte der Codebase-Konvention folgen.
  • Für Identifier-Normalisierung Locale.ROOT statt User-Locale verwenden.
  • Rekursive JSON-Key-Konvertierung ist ein anderes Problem als ein einzelner String.
  • Unterschiedliche Quellschlüssel können auf denselben camelCase-Key fallen und brauchen eine Konfliktregel.

Beispiel

VorherNachher
user_profile_imageuserProfileImage
__user__profile__userProfile
api_response_urlapiResponseUrl
created_atcreatedAt

Java-Code

assert snakeToCamel("user_profile_image").equals("userProfileImage");
assert snakeToCamel("__user__profile__").equals("userProfile");
assert snakeToCamel("api_response_url").equals("apiResponseUrl");
assert snakeToCamel("created_at").equals("createdAt");

Konvertierung online testen

Nutze den Browser-Converter für schnelle Tests, Batch-Werte, Akronyme und gemischte Namensformate.

Erkannt: snake_case
camelCase-Ausgabe
userProfileImageUrl

Alle Namensformate

camelCase
userProfileImageUrl
PascalCase
UserProfileImageUrl
snake_case
user_profile_image_url
kebab-case
user-profile-image-url
CONSTANT_CASE
USER_PROFILE_IMAGE_URL
dot.case
user.profile.image.url
path/case
user/profile/image/url

Die Konvertierung findet lokal in deinem Browser statt. Die Eingabe wird nicht an einen Conversion-Server gesendet.