Maison >développement back-end >C++ >Comment mettre en majuscule efficacement la première lettre d'une chaîne en C# ?

Comment mettre en majuscule efficacement la première lettre d'une chaîne en C# ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-16 13:22:59113parcourir

How to Efficiently Capitalize the First Letter of a String in C#?

Mise en majuscule de la première lettre des chaînes C# : solution d'optimisation des performances

Description du problème :

Dans DetailsView avec une zone de texte, vous devez vous assurer que les données d'entrée sont toujours enregistrées en commençant par une lettre majuscule tout en maximisant les performances.

Plan d'optimisation :

Pour de meilleures performances, il est recommandé d'utiliser la méthode d'extension FirstCharToUpper() dans le code C# fourni. Cette méthode a été optimisée pour plusieurs versions de C#, notamment :

<code class="language-csharp">public static string FirstCharToUpper(this string input)
{
    return input switch
    {
        null => throw new ArgumentNullException(nameof(input)),
        "" => throw new ArgumentException($"{nameof(input)} cannot be empty", nameof(input)),
        _ => string.Concat(input[0].ToString().ToUpper(), input.AsSpan(1))
    };
}</code>

Utilisation :

<code class="language-csharp">string input = "red";
string capitalized = input.FirstCharToUpper();</code>

Cette solution évite l'allocation de mémoire inutile en utilisant les instructions ReadonlySpan et switch. Il utilise également string.Concat() pour éviter la concaténation de chaînes.

Remarque :

Cette méthode suppose que seule la première lettre doit être en majuscule. Si vous souhaitez forcer toutes les lettres après la première lettre à être en minuscules, utilisez la réponse qui contient ToLower mais pas To.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn