Avatar ·

En C# pour initialiser une chaîne : string.Empty, String.Empty ou "" — lequel est le meilleur ?

Bonjour à tous ! Je viens de commencer à apprendre C# et j'ai rencontré une question qui me trouble beaucoup. Lorsque je dois déclarer une chaîne vide, je vois dans différents exemples de code trois options :

string a = "";
string b = string.Empty;
string c = String.Empty;

Toutes fonctionnent de la même manière et créent une chaîne vide. Mais laquelle est considérée comme correcte du point de vue du style, des performances et de la lisibilité ? J'ai entendu dire que "" pourrait créer un nouvel objet à chaque fois, alors que string.Empty est une constante. Est-ce vrai ? Ou est-ce que ce ne sont que des préjugés ?

Je m'intéresse aussi à savoir s'il y a une différence entre string.Empty et String.Empty ? En effet, string est un alias pour System.String. Donc, sont-ils équivalents ? Mais si c'est le cas, pourquoi la communauté C# utilise-t-elle plus souvent string.Empty ?

Et enfin : le choix affecte-t-il les performances dans les boucles ou lors d'assignations fréquentes ? Par exemple, si dans une boucle de