Exemple Java

Convertir snake_case en camelCase en Java

Découpez les tokens par underscore, normalisez avec Locale.ROOT et capitalisez tous les tokens après le premier.

Par Équipe éditoriale Camel Case ConverterPublié le 12 sept. 2026Dernière relecture

Code Java

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 évite que la casse des identifiants dépende de la locale utilisateur de la machine.

StringBuilder assemble efficacement les tokens ; les séparateurs mixtes et acronymes demandent des règles plus larges.

Cas limites à considérer

  • La casse des acronymes doit suivre la politique du codebase.
  • Utilisez Locale.ROOT pour les identifiants plutôt que la locale utilisateur.
  • La conversion récursive des clés JSON est distincte de celle d’une chaîne.
  • Des clés différentes peuvent se normaliser vers la même clé et nécessitent une politique de conflit.

Exemple

AvantAprès
user_profile_imageuserProfileImage
__user__profile__userProfile
api_response_urlapiResponseUrl
created_atcreatedAt

Code Java

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");

Tester la conversion en ligne

Utilisez le convertisseur pour les vérifications rapides, les lots, les acronymes ou les entrées qui mélangent plusieurs conventions.

Détecté : snake_case
Sortie camelCase
userProfileImageUrl

Tous les formats de nommage

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

La conversion s’effectue localement dans votre navigateur. Votre entrée n’est pas envoyée à un serveur de conversion.